Tại sao lại sử dụng kiến trúc hướng dịch vụ

Một phần của tài liệu Nghiên cứu dịch vụ web restful và ứng dụng trong hệ thống dữ liệu phân tán cho giao thông thông minh (Trang 42 - 45)

1.4. Cơ sở lý thuyết và công nghệ

1.4.1 Tại sao lại sử dụng kiến trúc hướng dịch vụ

Trong bài toán vận chuyển hành khách công cộng, tác giả tập trung giải quyết tình trạng bắt khách và đón xe dọc đường tại Việt Nam. Tác giả đề xuất ứng dụng kiến trúc hướng dịch vụ để tích hợp dịch vụ có sẵn với các dịch vụ mới nhằm xây dựng ứng dụng tra cứu đặt vé xe khách đi ngay. Để hiểu rõ tại sao ứng dụng kiến trúc hướng dịch vụ nhằm giải quyết bài toán trên, chúng ta cần hiểu rõ và có cái nhìn tổng quát và tìm hiểu kiến trúc tổng thể của SOA và công nghệ dịch vụ Web Restful.

1.4.1.1 Khái niệm kiến trúc hướng dịch vụ SOA

Kiến trúc hướng dịch vụ (SOA – Service Oriented Architecture) là chủ đề mới trong lĩnh vực công nghệ thông tin và được sự quan tâm của nhiều nhà cung cấp dịch vụ Công nghệ thông tin (CNTT) và truyền thông lớn trên thế giới như IBM, HP, BEA, Oracle, SAP và Microsoft... [1].

SOA có thể xây dựng và thực thi các hệ thống CNTT một cách dễ dàng và nhanh chóng bằng cách trực tiếp đáp ứng và tiếp cận các mục đích của một tổ chức. SOA tích hợp quy trình nghiệp vụ và CNTT vào một framework mở, ở đó người ta có thể thêm vào các dịch vụ.

Trong vài năm gần đây SOA đã bắt đầu được nhắc đến nhiều hơn và có rất nhiều khái niệm SOA được biết đến như:

- SOA - mô hình kiến trúc hướng dịch vụ là tập hợp của các Service, ở đó chúng giao tiếp với nhau.

- SOA là một cấu trúc tích hợp các service lại với nhau.

- SOA được hiểu là một cấu trúc hỗ trợ cho việc giao tiếp giữa các service, dựa trên các nội dung chính về các ứng dụng frontend, dịch vụ, kho lưu trữ dịch vụ, và các kết nối dịch vụ.

35

- SOA được hiểu là framework (nền tảng) cho việc xây dựng và tích hợp các quy trình nghiệp vụ, các ứng dụng dưới sự hỗ trợ của cơ sở hạ tầng CNTT.

- Theo khái niệm của IBM thì: SOA là kiến trúc hướng dịch vụ cho phép khả năng linh hoạt trong việc thể hiện các thành phần của quy trình nghiệp vụ và cơ sở hạ tầng CNTT, có thể được tái sử dụng và kết hợp với nhau.

Ngoài ra, tài liệu “Enterprise SOA - SOA Best Practices” trình bày định nghĩa SOA thông qua 4 thành phần cơ bản như sau: Kiến trúc hướng dịch vụ SOA là kiến trúc công nghệ thông tin của doanh nghiệp bao gồm 4 thành phần: application frontends, service, service repository và service bus. Trong đó, một service bao gồm contract, 1 hoặc nhiều interface và implementation.

Hình 1. 8 Các thành phần trong định nghĩa SOA

Application frontend (Các ứng dụng giao tiếp với người dùng): là ứng dụng giao tiếp với người sử dụng. Chúng khởi tạo và điều khiển các hoạt động của hệ thống phần mềm doanh nghiệp.

36

Service (Dịch vụ): là thành phần phần mềm thực hiện một chức năng riêng biệt, độc lập. Bao gồm cài đặt cụ thể để cung cấp logic nghiệp vụ, dữ liệu được thực hiện bằng các ngôn ngữ và kỹ thuật lập trình khác nhau.

Service repository (Kho lưu trữ các service): cung cấp khả năng lưu trữ, tìm kiếm các services và có được các thông tin mô tả và sử dụng service từ service contract.

Service bus: Thành phần cung cấp khả năng kết nối linh hoạt, lỏng lẻo các thành phần tham gia SOA, bao gồm các services và các ứng dụng không đồng nhất.

1.4.1.2 Kiến trúc tổng thể SOA

Để có cái nhìn tổng quát về SOA, chúng ta cùng tìm hiểu kiến trúc tổng thể của SOA. Kiến trúc SOA là một kiểu kiến trúc phân tầng, được thể hiện qua hình vẽ sau:

Hình 1. 9 Kiến trúc tổng thể SOA

37

Nhìn từ dưới lên ta có thể thấy được kiến trúc SOA như sau:

- Tầng dưới cùng là tầng chứa các ứng dụng con trong hệ thống CNTT của doanh nghiệp.

- Tầng phía trên nó là tầng chứa service thực thi.

- Tầng tiếp theo là tầng Orchestration (kết hợp) là sự kết hợp các service thực thi theo một quy trình.

- Tầng trên của tầng Orchestration là tầng chứa các service nghiệp vụ.

- Tầng trên của tầng các service nghiệp vụ thể hiện toàn bộ quy trình hay luồng công việc của hệ thống doanh nghiệp.

- Tầng trên cùng trong kiến trúc SOA là tầng các ứng dụng front-end.

Một phần của tài liệu Nghiên cứu dịch vụ web restful và ứng dụng trong hệ thống dữ liệu phân tán cho giao thông thông minh (Trang 42 - 45)

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

(89 trang)