Web services[8],[9],[10],[15]cũng là một cụng nghệ tớch hợp ứng dụng, sử
dụng trong mụi trường tớch hợp khụng đồng nhất, và cỏc ứng dụng luụn cú sự
thay đổi.
Web services là một ứng dụng cú khả năng xử lý một cụng việc độc lập,
được modul húa, tự mụ tả và dễ dàng kết nối với cỏc ứng dụng khỏc để thực hiện xử lý những cụng việc phức tạp hơn thụng qua mụi trường mạng. Giống như cỏc cụng nghệ DCOM, RMI, CORBA, web services cũng là một cụng nghệ dựng cho tớch hợp cỏc ứng dụng phõn tỏn. Với web services, người sử
dụng cú thể biết được cỏch thức triệu gọi cỏc dịch vụ bằng giao diện mụ tả
dịch vụ. Cỏc ứng dụng trao đổi dữ liệu với nhau thụng qua cỏc thụng điệp
được xõy dựng theo một cấu trỳc chung và sử dụng giao thức truyền thụng HTTP. Với cỏch thức giao dịch bằng thụng điệp, cỏc ứng dụng gửi và nhận dữ
liệu bằng cỏc thụng điệp. Hỡnh 2.4 sau, minh họa sự trao đổi dữ liệu giữa cỏc
Hỡnh 2.4. Giao tiếp giữa bờn sử dụng dịch vụ và cung cấp dịch vụ
Web services được xõy dựng từ cỏc chuẩn SOAP, WSDL, UDDI trờn nền tảng XML, tạo nờn một sự kết nối lỏng dễ dàng cho kết nối và khai thỏc dịch vụ. Người sử dụng cú thể tỡm thấy dịch vụ ở thư mục UDDI, biết được giao diện của dịch vụ bằng mụ tả WSDL và sử dụng dịch vụ thụng qua giao thức SOAP. Hỡnh 2.5 dưới đõy, biểu diễn một kiến trỳc đơn giản của Web services[9].
Hỡnh 2.5. Quan hệ giữa cỏc thành phần trong Web services
UDDI WSDL Web service Web client 3. Tỡm kiếm 4. SOAP 1. Mụ tả 2. Đăng ký Ứng dụng yờu cầu Yờu cầu Đỏp ứng Ứng dụng cung cấp Thụng điệp
Ưu điểm của web servies là cỏc chuẩn được xõy dựng trờn nền tảng ngụn ngữ XML. Đõy là sự thuận lợi cho mở rộng ứng dụng, mà khụng ảnh hưởng
đến mối liờn kết nội tại với cỏc ứng dụng khỏc. Một ưu điểm nữa của web services là khụng cần bận tõm đến cỏc ứng dụng trờn ngụn ngữ nào, thực thi trờn nền hệ điều hành nào, cấu hỡnh phần cứng ra sao và định vị ở đõu. Qua
đú, Ta cú thể thấy cỏc ứng dụng tớch hợp cú được tớnh tớnh tương liờn yếu và tớnh trong suốt khi sử dụng cụng nghệ web services.
• Tớnh tương liờn yếu: Trong mụi trường tương liờn mạnh, mỗi ứng dụng kết nối với ứng dụng khỏc qua một tổ hợp cỏc giao diện đúng, giao thức mạng đúng, dẫn đến việc tớch hợp cỏc ứng dụng tốn nhiều thời gian, chi phớ cao để mở liờn kết và liờn kết lại cỏc mỏy tớnh trong hệ thống. Bởi vỡ những sự thay đổi đú sẽ dẫn đến sự thay đổi của giao diện. Với tớnh tương liờn yếu của web services, mỗi một phần của phần mềm đó đưa lờn như là một dịch vụ
web, dễ dàng để di chuyển đến cỏc vị trớ, và cú thểđơn giản để liờn kết lại cỏc dịch vụ web. Hỡnh 2.6 sau, mụ tả tớnh tương liờn yếu của dịch vụ.
Hỡnh 3.5 Web service xõy dựng trờn cơ sở tương liờn yếu
Hỡnh 2.6. Tớnh tương liờn yếu của dịch vụ
Minicomputer Minicomputer
Mainframe Web services Web services
Web services Web services
Sun server Sun server
Sun server
Trong phần 1 của hỡnh 2.5, một ứng dụng trờn mỏy tớnh mini truy cập một web services trờn mỏy mainframe. Tuy nhiờn, nhà cung cấp mỏy mainframe muốn thay thế mỏy cũ với một mỏy chủ Sun mới.
Trong phần 2 hỡnh 2.5, mỏy Sun server thay thế mỏy mainframe nhưng
ứng dụng trờn mỏy minicomputer này vẫn trao đổi dữ liệu với web services trờn mỏy Sun server bằng thụng điệp SOAP. Web services khụng tạo ra sự
khỏc biệt khi đầu cuối là một mỏy mainframe, một mỏy Windows, hay bất cứ
mỏy nào khỏc. Khi mỏy mainframe thay thế bởi mỏy Sun thỡ mỏy minicomputer vẫn tiếp tục truy cập dịch vụ web mà khụng gặp bất cứ sự rắc rối nào.
Trong phần 3 và 4 của hỡnh 2.5, tiến trỡnh thay thế vẫn tiếp tục, nhà cung cấp thay thế mỏy minicomputer bằng mỏy Sun server và mỏy Windows. Tuy nhiờn, hoạt động của ứng dụng khụng thay đổi.
• Tớnh trong suốt : tớnh trong suốt của web services cho phộp cỏc ứng dụng trong ứng dụng tớch hợp cú thể định vị ở bất kỳ vị trớ nào trong mạng, mà khụng ảnh hưởng đến hoạt động của ứng dụng tớch hợp. Bởi vỡ mỗi dịch vụ cú một địa chỉ URLs riờng và linh hoạt như website trờn mạng Internet. Do
đú, khụng cần phải quan tõm dịch vụđược đặt ở đõu, khi cần đến dịch vụ chỉ
cần triệu gọi thụng qua địa chỉ URLs.
Hỡnh 2.7. Tớnh trong suốt của web services
Trong hỡnh 2.7, một web service cú thể được định vị trong hai miền(Domain) khỏc nhau. Một lý do nào đú, miền A bị lỗi khụng thể hoạt
động được, phớa sử dụng dịch vụ cú thể truy cập dịch vụ web trờn miền B mà khụng hề biết dịch vụ sử dụng đang nằm trờn miền B.