trong các chương trước, chương này sẽ xây dựng ứng dụng tra từ điển đa ngôn ngữ (Anh – Việt, Việt – Anh, Pháp – Việt, Việt - Pháp) từ các dịch vụ từ điển để minh họa cho các lý thuyết trên.
Nội dung sẽ trình bày:
Nhắc lại yêu cầu của một hệ thống theo kiến trúc hướng dịch vụ.
Mô tả bài toán xây dựng từ điển.
Cài đặt bài toán tra từ điển.
Đánh giá về ứng dụng.
1. Nhắc lại các yêu cầu của một hệ thống xây dựng theo kiến trúc hướng dịch vụ hướng dịch vụ
Nhìn ở mức cao, kiến trúc hướng dịch vụ bao gồm 3 thành phần: thành phần cung cấp dịch vụ, thành phần sử dụng dịch vụ và thành phần đăng ký dịch vụ. Vai trò của thành phần cung cấp và thành phần sử dụng dịch vụ là khá rõ ràng, còn thành phần đăng ký dịch vụ là trung gian giữa các thành phần này.
Hình 3.1: Mô hình kiến trúc hướng dịch vụ ở mức cao
Thành phần cung cấp dịch vụ đăng ký với thành phần đăng ký dịch vụ và thành phần sử dụng dịch vụ truy vấn thành phần đăng ký dịch vụ để tìm thành phần cung cấp dịch vụ. Sử dụng thành phần đăng ký dịch vụ trong kiến trúc hướng dịch vụ đem lại các lợi ích sau:
• Phân tách thành phần sử dụng và thành phần cung cấp dịch vụ. • Cho phép cập nhật “nóng” dịch vụ.
• Cung cấp dịch vụ tìm kiếm, tra cứu cho thành phần sử dụng.
• Cho phép thành phần sử dụng chọn lựa các thành phần cung cấp dịch vụ trong thời gian thực thi, không phải gắn cứng vào một nhà cung cấp cụ thể nào đó.
Các lợi ích của việc xây dựng ứng dụng theo định hướng dịch vụ là khá rõ ràng. Để xây dựng được những ứng dụng như vậy thì các dịch vụ tạo thành phải có các tính chất sau:
• Các dịch vụ là có thể tìm kiếm được. • Các dịch vụ có tính liên thông.
• Các dịch vụ không được gắn kết chặt chẽ với nhau. • Các dịch vụ trong suốt về vị trí.
• Một dịch vụ là một đơn vị phần mềm gồm các hoạt động nghiệp vụ có tính tự chứa đựng và mức độ đóng gói cao (coarse-grained).
• Một dịch vụ cần có khả năng được phát hiện ra một cách công khai bằng cách sử dụng một nơi đăng ký dịch vụ nhằm cho phép các liên kết động tới dịch vụ.
• Một dịch vụ cần đảm bảo tính liên thông bằng cách hỗ trợ các giao thức truyền thông được chuẩn hóa và các định dạng dữ liệu rõ ràng.
Việc xây dựng từ điển đa ngôn ngữ không phải là vấn đề mới, tuy nhiên, ở đây tôi sẽ thực hiện việc xây dựng từ điển theo định hướng dịch vụ và cài đặt bằng dịch vụ mạng.