Friday 7 June 2013

Web Service Concepts

Web Service

Là phần mềm chức năng luôn sẵn sàng trên Internet và bất kì client nào cũng có thể sử dụng chức năng này mà không cần quan tâm đến ngôn ngữ hay platform. Web Service có thể được tạo ra bởi Java, .Net, C/C++… Web service đóng vai trò như một web application component hoặc một đoạn code chức năng, có nghĩa là ta có thể invoke web service hiện có trong project của mình. Điều này khuyến khích việc tái sử dụng code và khả năng phối hợp.

XML

Là viết tắt của Extensible Markup Language. XML được thiết kế để lưu trữ và vận chuyển dữ liệu. Ưu  điểm của XML là khả năng phối hợp của nó. XML là một platform độc lập, cho phép các ứng dụng giao tiếp với nhau mà không cần quan tâm đến ngôn ngữ của nhau.

SOAP

Là viết tắt của Simple Object Access Protocol – Service Oriented Access Protocol. SOAP sử dụng giao thức mở, dựa trên XML protocol. Ứng dụng có thể giao tiếp với nhau sử dụng SOAP trên HTTP. SOAP có thể được xác định như một ngôn ngữ độc lập, platform độc lập và dựa trên XML protocol. SOAP là dạng chuẩn của W3C

REST

Là viết tắt của Representational State Transfer. REST là mẫu kiến trúc dùng cho hệ thống phân tán.  Nói cách đơn giản, REST là cách để thiết kế kiến trúc của web project.

REST based Web Service

Web service được thiết kế sử dụng REST thì được gọi là RESTful web service hay là REST based Web Service. RESTful web service khá là nhẹ, nó expose “Resources” thay vì “Actions” ra ngoài. Trong SOAP web service, “Actions” được đưa ra ngoài.
Vd:  Calculator web service cho phép client sử dụng “action” được đưa ra ngoài như: Cộng, Trừ, Nhân, Chia, đây là SOAP based web service. Nếu ta sử dụng REST, ta phải đưa ra ngoài resource của Calculator thay vì đưa ra ngoài action của nó, client sẽ sử dụng Calculator như là resource.

WSDL

Là viết tắt của Web Services Desciption (Definition) Language. Bản chất WSDL là một XML document. Nó miêu tả một web service, và cho biết làm thế nào để truy cập vào web service đó. WSDL đóng vai trò như một web service contact giảu client và Web Service Developer.

UDDI

Là viết tắt của Universal Description, Discovery and Integration, là một dịch vụ hướng dẫn trên Internet. Nếu muốn sử dụng web service nào đó, ta phải nhìn vào UDDI và lấy WSDL của web service đó về. Trong trường hợp khác, ta tạo ra một web service và muốn đưa nó ra bên ngoài cho mọi người sử dụng, ta phải đăng kí nó với UDDI. Mọi người sẽ có thể tìm kiếm, định vị được Web Service của ta và lấy WSDL về sử dụng. UDDI giao tiếp thông qua SOAP. UDDI được xây dựng trên platform .NET

Bottom – Top Web Service Approach

Web service developer có 2 lựa chọn phát triển là Bottom-Top và Top-Bottom. Theo cách tiếp cận Bottom-Top, Đầu tiên Java class (hoặc bất kì ngôn ngữ nào khác) được thiết kế cho web service. Sau đó, WSDL được tạo ra cho web service được phát triển. Cách tiếp cận này tốt khi có ít sự thay đổi trong thiết kế web service.

Top – Bottom Web Service Approach

Trong cách tiếp cận này, đầu tiên WSDL cho web service được thết kế và sau đó, dựa trên đây, Java class (hay bất kì ngôn ngữ nào) cho web service được implement.

MTOM

Là viết tắt của Message Transmission Optimization Mechanism. Nó được sử dụng để trao đổi dữ liệu binary giữa các web service.