Công nghệ Web service và Service Oriented Architecture

Một phần của tài liệu TÍNH TOÁN LƯỚI VÀ ĐIỆN TOÁN ĐÁM MÂY (Trang 31)

Công nghệ Web service và Service Oriented Architecture (SOA) không phải là ý tưởng mới nhưng chúng là công nghệ cơ sở chính cho tính toán đám mây. Các dịch vụ của đám mây được thiết kế điển hình như Web service tuân theo các chuẩn WSDL, SOAP, UDDI. Một SOA tổ chức và quản lý các Web services trong đám mây.

a. Service Oriented Architecture (SOA) là gì

SOA - viết tắt của thuật ngữ Service Oriented Architecture (kiến trúc hướng dịch vụ) là khái niệm về hệ thống trong đó mỗi ứng dụng được xem như một nguồn cung cấp dịch vụ. SOA phát triển dựa trên hai nguyên tắc thiết kế quan trọng:

+ Mô-đun: đó là tách các vấn đề lớn thành nhiều vấn đề nhỏ hơn, dễ dàng tái sử dụng và khả năng tương tác cao.

+ Đóng gói : Che đi dữ liệu và lô-gic trong từng mô-đun đối với các truy cập từ bên ngoài.

+ Dịch vụ nhận dạng và phân loại, cung cấp và phân phối, giám sát và theo dõi.

SOA là kiểu kiến trúc dễ dàng mở rộng và tích hợp. Kiến trúc này bao gồm các service được nối kết lỏng lẻo, dễ dàng sử dụng lại, có thể tương tác và không phụ thuộc vào kỹ thuật hiện thực.

Ưu và nhược điểm của SOA:

+ Ưu: Hệ thống uyển chuyển và lâu dài, dễ dàng và nhanh chóng tạo ra các Bussiness process từ các service đã có, có khả năng tương tác của các service khác.

+ Nhược: Hệ thống phức tạp, khó miêu tả dữ liệu không cấu trúc trong header của message.

Lợi ích khi sử dụng SOA:

+ Độc lập hệ thống: những service không phụ thuộc vào hệ thống và mạng cụ thể.

+ Có khả năng tái sử dụng.

+ Khả năng hồi đáp thích nghi tốt và nhanh hơn để đáp ứng với sự thay đổi về yêu cầu giao dịch.

+ Cho phép dễ dàng triển khai chương trình, môi trường chạy và quản lý service dễ dàng hơn.

+ Kiến trúc kết nối lỏng lẻo cho phép dễ dàng tích hợp thành phần những chương trình, tiến trình hay những service phức tạp từ những service đơn giản.

+ Cho phép Service Consumers tìm kiếm và kết nối với những service động khác.

+ Những sự xác nhận và chứng minh của Service consumer về những tính năng security dựa trên giao tiếp Service tốt hơn cơ chế kết nối chặt chẽ.

b. Web service là gì?

Web service là một công nghệ triệu gọi từ xa có tính khả chuyển cao, mang tính độc lập nền và độc lập ngôn ngữ. Các chương trình code bằng các ngôn ngữ lập trình khác nhau, chạy trên các nền tảng (phần cứng & OS) khác nhau đều có thể trao đổi với nhau thông qua công nghệ này. Tầng transport của Web Service thường dùng những công nghệ truyền tải phổ dụng nhất như HTTP, SMPT,... (tuy hiện nay thường chỉ dùng HTTP) nên khả năng phân tán trên diện rộng như Internet là rất thuận tiện.

Web service liên quan mật thiết đến SaaS, web service cung cấp giao diện lập trình ứng dụng (API - Application Programming Interface), như API của Google Maps, qua Internet để các chuyên gia phát triển phần mềm có thể khai thác tính năng.

Đặc điểm của Web service:

+ Web Services được truy xuất thông qua Web bằng cách dùng URL.

+ Web Services liên lạc với thế giới bên ngoài dùng thông điệp XML gửi trực tiếp qua Web protocols.

+ Web Services được đăng kí tại nơi chung, và được đặc tả tất cả các chức năng.

Ưu điểm của Web service:

+ Web service là độc lập với nền tảng và ngôn ngữ vì sử dụng ngôn ngữ chuẩn XML. Ví dụ: chương trình ứng dụng được lập trình bằng C++ và chạy trên hệ điều

hành Windows, trong khi Web service được viết bằng Java và chạy trên hệ điều hành Linux.

+ Web service dùng giao thức HTTP cho phép xây dựng các ứng dụng dùng Internet làm phương tiện truyền thông do không bị các hạn chế về tường lửa.

Mối liên hệ giữa Web service và Grid:

+ Grid có nhiều lợi ích khi sử dụng Web Service.

+ Web Service hướng tới các hệ thống phân tán liên kết lỏng, trong khi các công nghệ khác như CORBA và EJB phát triển trên các hệ thống phân tán liên kết chặt trong đó client và server phụ thuộc vào nhau.

+ Đối với Web Service , client không cần phải duy trì liên kết với Web Service cho tới khi nó thực sự cần tới dịch vụ này.

+ Đây chính là thế mạnh của Web Services, vì thế nó được chọn để phát triển dịch vụ Grid.

c. Universal Description, Discovery and Integration (UDDI)

UDDI là phần chứa các thông tin của web service, được miêu tả bởi ngôn ngữ WSDL, giao tiếp thông qua giao thức SOAP và được xây dựng trên Microsoft.NET platform. UDDI là phần mô tả dịch vụ Web chuẩn.

Nhiệm vụ của UDDI: tìm đúng dịch vụ, biết thông tin về cách sử dụng dịch vụ và đối tượng cung cấp dịch vụ, đồng thời xác định một đăng ký dịch vụ Web.

d. Giao thức Simple Object Access Protocol (SOAP)

SOAP là một protocol giao tiếp dùng trong Web service được xây dựng dựa trên XML. Giao thức SOAP là giao thức được Web Service sử dụng để truyền dữ liệu qua Internet. SOAP dùng XML để trao đổi thông tin qua môi trường phân tán. Nó hỗ trợ nhiều kiểu thông tin khác nhau như: mô hình trao đổi thông tin sau khi gọi thủ tục từ xa hoặc mô hình trao đổi thông tin trong một cơ chế hướng thông báo.

Hình trên mô tả giao tiếp của một ứng dụng với một web service được thực hiện qua thông điệp SOAP sử dụng network protocol HTTP, SMTP, FTP. Ứng dụng sẽ đặc tả yêu cầu trong SOAP message và thông qua network protocol gởi đến cho web service. Web service sẽ nhận và phân tích yêu cầu sau đó trả về kết quả thích hợp.

WSDL Là ngôn ngữ định nghĩa các dịch vụ web. Việc đặc tả chức năng, interface giao tiếp của một web service và cách API được thực hiện dựa vào WSDL. Việc đặc tả này bao gồm protocol được sử dụng, cấu trúc và định dạng dữ liệu dùng để giao tiếp... WSDL có thể xem là một tài liệu viết bằng XML.

Kiểu (Types): kiểu cơ bản khi trao đổi giữa client và server

Thông điệp (Message): các thông điệp gửi nhận giữa client và server

Dạng thức Port (input, output) (Port Type): tổng hợp các message để đinh nghĩa quá trình giao tiếp giữa client và server

Kết nối (Binding): cách thức giao tiếp giữa client và server (HTTP, SMTP, RPC,…)

Dịch vụ (Service): định nghĩa tên cùng với các chú thích (documentation), và địa chỉ của service

Một phần của tài liệu TÍNH TOÁN LƯỚI VÀ ĐIỆN TOÁN ĐÁM MÂY (Trang 31)

Tải bản đầy đủ (PDF)

(42 trang)