1. Trang chủ
  2. » Giáo án - Bài giảng

phát triển phần mềm hướng dịch vụ

17 746 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 822,5 KB

Nội dung

 Một phần của các logic nghiệp vụ có thể truy cập thông qua Internet bằng cách sử dụng các tiêu chuẩn mở Microsoft; Các chức năng phần mềm được đóng gói, kết hợp lỏng lẻo, được cung

Trang 1

PTPM HƯỚNG DỊCH VỤ

Lý thuyết 2

1 Khái niệm dịch vụ Web 2

2 Khả năng ứng dụng của dịch vụ 3

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

4 Khái niệm trạng thái và thuộc tính của dịch vụ 3

5 Đồng bộ và tính xác định của dịch vụ 4

6 Thực thi và giao tiếp của dịch vụ 4

7 Mô hình hoạt động (vai trò) của kiến trúc dịch vụ 4

8 Chất lượng dịch vụ 5

9 Tác động và khó khăn của dịch vụ Web 5

10 Khái niệm phần mềm trung gian 6

11 Khái niệm SOAP (vai trò, chức năng, các bộ phận) 6

12 Các cách thức liên lạc của SOAP 7

13 Cấu trúc thông điệp SOAP 7

14 Ưu nhược điểm của SOAP 8

15 Khái niệm WSDL 9

16 Cấu trúc của tài liệu WSDL 9

17 Vai trò của đăng ký dịch vụ 10

18 Cách thức phát hiện dịch vụ 10

19 Vai trò và các bộ phận chức năng UDDI 10

20 Cấu trúc tài liệu UDDI 11

21 Các cách thức triển khai UDDI 11

22 Khái niệm qui trình 12

23 Khái niệm về luồng công việc 12

24 xCác lớp ngôn ngữ con OWL 12

25 Khái niệm và mục tiêu của OWL-S 12

26 Các cơ chế phát hiện dịch vụ Web có ngữ nghĩa 13

27 Các thuật toán đối sánh 14

28 Lựa chọn dịch vụ dựa trên đối sánh ngữ nghĩa 15

29 Khái niệm hệ thống tư vấn (recommendation system) 15

Bài tập 16

1 Bài tập liên quan SOAP 16

2 Bài tập WSDL 16

3 Bài tập UDDI 16

4 Bài tập về RDF 16

Trang 2

Lý thuyết

1 Khái niệm dịch vụ Web.

 Một phần của các logic nghiệp vụ có thể truy cập thông qua Internet bằng cách sử dụng các tiêu chuẩn mở (Microsoft);

Các chức năng phần mềm được đóng gói, kết hợp lỏng lẻo, được cung cấp thông qua các

giao thức chuẩn trên Web (DestiCorp);

Thành phần phần mềm kết nối lỏng lẻo cùng tương tác với nhau thông qua các chuẩn công

nghệ Internet (Gartner);

Một ứng dụng phần mềm nhận dạng bằng một URI, có giao diện và bắt buộc có khả năng

được xác định, mô tả, và phát hiện bởi bằng XML, và hỗ trợ tươ ng tác trực tiếp với các ứng dụng phần mềm khác sử dụng các thông điệp XML dựa trên các giao thức Internet (W3C) Một module phần mềm tự chứa (self contained), tự mô tả (self describing) khả dụng thông qua mạng, ví dụ Internet

Mục đích: Để hoàn thành một số tác vụ, bài toán hoặc điều khiển các giao dịch thay cho người dùng hoặc ứng dụng

Cấu tạo: một hạ tầng máy tính phân tán được tạo bởi các module ứng dụng tương tác khác nhau liên lạc thông qua mạng (riêng, công cộng hoặc hệ thống logic đơn lẻ)

WS thực hiện các chức năng nghiệp vụ được đóng gói, ví dụ :

1 một tác vụ nghiệp vụ tự mô tả và tự chứa (a self-contained business task) – dịch vụ rút tiền hoặc gửi tiền;

2 một tiến trình nghiệp vụ đầy đủ – tự động đặt mua các văn phòng phẩm;

3 một ứng dụng – một ứng dụng bảo hiểm nhân thọ a life;

4 một tài nguyên hỗ trợ dịch vụ – truy cập tới một cơ sở dữ liệu nền (back-end) đặc biệ chứa các bản ghi y tế của bệnh nhân

• Có thể được kết hợp để tạo một quy trình đầy đủ :

– Giảm tương tác của con người, ví dụ tạo một quy trình đầy đủ trong doanh nghiệp nhưng quản lý chuỗi cung ứng, thu mua, vận chuyển etc

– Cho phép kết hợp các ứng dụng mới, mở rộng vào các ứng dụng có sẵn

• Khả dụng cho nhiều đối tượng khách khác nhau (độc lập nền tảng) W3C định nghĩa một Dịch vụ Web là một hệ thống (thành phần) phần mềm được thiết kế để hỗ trợ tương tác tương thích máy-máy qua mạng" Nó có một giao tiếp được biểu diễn bởi format có thể xử lý bởi máy (Web Services Description Language -WSDL) Các hệ thống khác tương tác với Dịch vụ Web qua mô tả sử dụng các thông điệp SOAP, đường truyền bởi HTML cùng với XML và kết hợp với các chuẩn Web liên quan khác."[1]

Trang 3

2 Khả năng ứng dụng của dịch vụ

Thực hiện các chức năng nghiệp vụ được đóng gói:

- 1 tác vụ nghiệp vụ tự mô tả và tự chứa

- Một tiến trình nghiệp vụ đầy đủ

- Một ứng dụng

- Một tài nguyên hỗ trợ dịch vụ

Dịch vụ dùng:

- Bên trong 1 doanh nghiệp

o Đẩy nhanh tiến độ và giảm chi phí tích hợp

o Tiết kiệm chi phí quản lý và triển khai hạ tầng

o Giảm các yêu cầu về kỹ năng

o Cải thiện sử dụng lại

- Giữa các doanh nghiệp

o Cung cấp dịch vụ cho khách hang của công ty

o Truy cập các dịch vụ công ty đối tác và nhà cung cấp

o Các chuẩn và cơ sở hạ tầng chung giảm thiểu rào cản giữa các doanh nghiệp

o Triển khai đơn giản

o Mở ra nhiều cơ hội kinh doanh mới

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

SOA: phương pháp logic trong thiết kế hệ thống phần mềm để cung cấp dịch vụ cho ứng dụng người dùng cuối hoặc các dịch vụ khác được phân phối trong một mạng, thông qua giao diện được công bố và có thể phát hiện

4 Khái niệm trạng thái và thuộc tính của dịch vụ

- Các thuộc tính chức năng và phi chức năng:

o Mô tả dịch vụ chức năng chi tiết về đặc điểm hoạt động để xác định các hành vi tổng quát của dịch vụ

o Các mô tả phi chức năng hướng tới các thuộc tính chất lượng dịch vụ ví dụ như định giá và đo dịch vụ, số liệu hiệu suất (thời gian đáp ứng hay độ chính xác), bảo mật ủy quyền, chứng thực, khả năng mở rộng, tính toán sẵn

Trang 4

- Các dịch vụ stateless hoặc stateful:

o Stateless: các dịch vụ có thể được gọi nhiều lần mà không cần phải duy trì ngữ cảnh hoặc trạng thái ghi chúng được gọi là quốc tịch

 Các dịch vụ thông tin đơn giản

o Stateful: dịch vụ yêu cầu ngữ cảnh phải được bảo toàn từ một lời gọi đến lời gọi tiếp

 Dịch vụ phức tạp (quy trình nghiệp vụ)

5 Đồng bộ và tính xác định của dịch vụ

Sự đông bộ: có 2 phong cách lập trình cho các dịch vụ

- Đồng bộ hoặc lời gọi thủ tục từ xa: Khách hang thể hiện yêu cầu của họ như là một lời gọi phương thức với 1 tập các tham số, và trả về phản hồi chứa 1 giá trị

o Các dịch vụ thông tin đơn giản như trả về thông tin thời tiết tại một địa điểm cụ thể,

- Không đồng bộ hoặc thông điệp: khi một khách hang gọi một dịch vụ kiểu thông điệp, toàn bộ tài liệu thường được gửi kèm, ví dụ, một đơn hàng không phải là một tập rời rạc các tham số,…

o Quy trình kinh doanh ví dụ như xử lý một đơn hàng, phản hồi lại yêu cầu đặt hàng

từ một khách hàng

Sự rõ ràng:

- Sự tương tác giữa cácfa dịch vụ phải được xác định rõ Ngôn ngữ mô tả các dịch vụ web (wsdl) cho phép các ứng dụng diễn tả các quy tắc để giao tiếp và tương tác với các dịch

vụ khác

6 Thực thi và giao tiếp của dịch vụ

7 Mô hình hoạt động (vai trò) của kiến trúc dịch vụ

Nhà cung cấp dịch vụ provider(các tổ chức cung cấp thực thi các dịch vụ, cung cấp các mô tả dịch vụ của họ, cung cấp các hỗ trợ kĩ thuật và nghiệp vụ có liên quan)

Khách hang dịch vụ: các tổ chức của người dung cuối sử dụng một số dịch vụ

Trang 5

Đăng kí dịch vụ: một thư mục có thể tìm kiếm được trong đó mô tả dịch vụ có thể công bố và tìm kiếm

- Các yêu cầu dịch vụ: tìm mô tả dịch vụ tại đăng ký dịch vụ và thu về ràng buộc thông tin cho các dịch vụ

- Chỉ cần thông tin này các dịch vụ yêu cầu có thể liên lạc, kết nối tới các nhà cung cấp dịch vụ => sử dụng được dịch vụ

8 Chất lượng dịch vụ Qos Quanlity of Service

- QoS liên quan tới khả năng của một dịch vụ web đáp ứng các lời gọi dự kiến và thực hiện chúng ở mức độ tương xứng với sự mong đợi của nhà cung cấp và khách hàng

- Vấn đề quan trọng của môi trường dịc vụ web

o Tính khả dụng

o Khả năng truy cập

o Sự phù hợp với các tiêu chuẩn

o Tính toàn vẹn

o Hiệu suất

o Tính tin cậy

o Khả năng mở rộng

o Bảo mật

o Giao dịch

9 Tác động và khó khăn của dịch vụ Web

Tác động:

Dịch vụ web đang tiến hóa để nắm bắt sự hội tụ của e-Business, EAI, middleware truyền thống và web Các dịch vụ web cung cấp:

- Một cách chuẩn để đưa ra các chức năng ứng dụng cũ như là một tập hợp các dịch

vụ tái sử dụng

- Một phương pháp chuẩn, dễ dàng linh hoạt khắc phúc vấn đề tích hợp ứng dụng

Trang 6

- Một phương pháp chuẩn để phát triển và nhóm các ứng dụng gốc internet cho cả nội bộ và bên ngoiaf các doanh nghiệp mở rộng

- Một bề ngoài chung cho các hệ thống liên doanh nghiệp cụ thể -> dễ dàng hơn trong tạo ra các sla cần thiết cho tích hợp B2B

Khó khăn:

Các yêu cầu kinh doanh dẫn đến dịch vụ web trở nên phức tạp hơn, các công nghệ của dịch vụ web cần nhiều tính năng bổ sung để:

- Vấn đề hiệu năng

- Thiếu hỗ trợ phù hợp để quản lý các giao dịch phức tạp

- Thiếu thể hiện ngữ nghĩa kinh doanh và phức tạp

- Dạt được đông ý rộng rãi và hài hòa trên một loạt các tiêu chuẩn hiện hành và mới nổi

10 Khái niệm phần mềm trung gian.

Middleware là phần mềm máy tính với nhiệm vụ kết nối các thành phần phần mềm

hoặc các ứng dụng với nhau

Phần mềm loại này bao gồm một tập các dịch vụ cho phép sự tương tác giữa các tiến trình chạy trên một hoặc nhiều máy khác nhau

Middleware nằm ở giữa các ứng dụng phần mềm chạy trên các hệ điều hành khác nhau

Nó tương tự với tầng giữa của một kiến trúc hệ thống đơn 3 tầng, chỉ khác ở chỗ nó trải rộng qua các hệ thống và ứng dụng khác nhau Ví dụ là các phần mềm EAI, phần mềm truyền thông, Transaction Processing System, và các phần mềm thông điệp-và-hàng đợi

Trang 7

11 Khái niệm SOAP (vai trò, chức năng, các bộ phận)

Khái niệm

SOAP : giao thức liên lạc dựa trên XML đểtrao đổi thông điệp giữa các máy tính bất kể

hệ điều hành, môi trường lập trình hay các nền tảng mô hình đối tượng (object model framework)

Chức năng:

 SOAP giao thức truyền thông điệp tiêu chuẩn sửdụng bởi các dịch vụ Web

 SOAP được dùng cho liên lạc giữa các ứng dụng

 SOAP sửdụng XML đểmã hóa các tham sốcủa yêu cầu và đáp ứng và dùng http làm phương tiện vận chuyển

 Để xử lývấn đềhệthống riêng biệt chạy trên các hạtầng không đồng nhất, dịch vụWeb sửdụng SOAP

SOAP chỉxửlýhai thuộc tính căn bản:

– gửi và nhận các gói giao thức vận chuyển HTTP (và giao thức khác)

– xửlýthông điệp XML

Trang 8

12 Các cách thức liên lạc của SOAP

13 Cấu trúc thông điệp SOAP

Thông điệp SOAP

 Thông điệp SOAP được coi như bao gói mà ứng dụng chứa dữliệu cần truyền

 Một thông điệp SOAP có phần tử <Envelope> chứa tùy chọn <Header> và bắt buộc <Body>

 <Header> chứa các thông tin về cách thông điệp được xửlý (xác thực người dùng, chữkýsố)

 <Body> chính là nơi chứa các thông tin đầu cuối được chuyển tải nhờ SOAP

Các môi giới SOAP

Trang 9

 Các mào đầu SOAP được thiết kếdựtrù cho việc tham gia của các nút xửlýSOAP khác, gọi là các môi giới (Intermediary) SOAP, theo suốt đường dẫn của thông điệp từnới gửi SOAP đầu tiên đến nơi nhận cuối cùng

 Thông điệp SOAP di chuyển dọc theo đường dẫn từngười gửi đến người nhận

 Toàn bộthông điệp SOAP khởi đầu với người gửi đầu tiên, người mà tạo ra thông điệp SOAP, và kết thúc bằng người nhận cuối cùng

Thân SOAP

 Phần thân SOAP là nơi chứa dữliệu ứng dụng cụ thể dạng XML được trao đổi

 Phần tử <Body> phải có và là một nốt con trực tiếp của bao gói Nó có thểchứa một sốthành phần con gọi là các mục của phần thân, nhưng cũng có thểrỗng Phần <Body> chứa một trong những thứsau:

o Dữliệu cụthểcủa ứng dụng là thông tin trao đổi với dịch vụWeb Phần <Body> là nơi chứa thông tin vềlời gọi thủtục và các tham sốliên quan Đó là nơi đáp ứng cho lời gọi thủtục và thông tin lỗi

o Thông điệp lỗi được dùng khi có lỗi

 Thông điệp SOAP có thểmang hoặc dữliệu cụthểcho ứng dụng hoặc lỗi nhưng không thểcảhai

14 Ưu nhược điểm của SOAP

●  Ưu điểm:

–  Đơn giản

–  Khảchuyển (linh hoạt)

–  Thích ứng với tường lửa

–  Dùng chuẩn mở

–  Có khảnăng hoạt động trên nhiều hệthống

–  Chấp nhận rộng rãi

●  Nhược điểm:

–  Dựa quá nhiều vào HTTP

–  Không có trạng thái

–  Rời rạc hóa theo giá trịkhông theo tham chiếu

15 Khái niệm WSDL

●  là ngôn ngữbiểu diễn dịch vụdựa trên XML, được dùng đểmô tảchi tiết đầy đủcủa giao diện dịch vụweb, đồng thời là phương tiện đểtruy cập dịch vụweb

● Mô tả cơ chế tương tác với một dịch vụ web cụthể

●  ràng buộc cả nhà cung cấp dịch vụ và người yêu cầu dịch vụ

●  độc lập nền tảng và ngôn ngữ, được sửdụng chủyếu (nhưng không hoàn toàn) đểmô tảdịch vụhỗtrợSOAP

Cơbản, WSDL được dụng đểmô tả: dịch vụlàm gì,lưu trú ở đâu, làm sao đểgọi

Đặc điểm:

Trang 10

●  Các thông báo và thao tác được mô tảmột cách hình thức

●  Định nghĩa các liên kết (bindings) tới các giao thức và định dạng thông điệp:

–  Các điểm cuối (Endpoints) được định nghĩa định bằng cách liên kết giao thức mạng cụthểvà định dạng thông điệp đến các thao tác và thông điệp trừu tượng

–  Có thểmô tảbất kỳ endpoint nào mà không phụthuộc vào giao thức mạng bên dưới hoặc định dạng thông điệp

–  Định nghĩa làm sao để định vị endpoint của dịch vụ:

●  Định nghĩa phần mởrộng của SOAP mởrộng và HTTP

16 Cấu trúc của tài liệu WSDL

●  Tài liệu WSDL có thể được phân tách thành các phần riêng biệt: :

–  Định nghĩa giao diện dịch vụ: mô tảkiến trúc cơsởhạtầng dịch vụweb nói chung; bao gồm tất cảcác thao tác hỗtrợ, tham số, và kiểu dữliệu trừu tượng

–  Phần thực thi dịch vụ: liên kết giao diện trừu tượng tới một địa chỉmạng cụ thể, tới, tới một giao thức đặc biệt, và tới một cấu trúc dữliệu cụthể

Nội dung tài liệu wsdl

●  Các định nghĩa trừu tượng (giao diện)

- <types> kiểu dữliệu

- <message> tham sốthao tác

- <operation> thông tin trừu tượng của các hành động của dịch vụ

- <portType> Tập các định nghĩa vềthao tác

●  Định nghĩa cụthể(thực thi)

–  <binding> các liên kết tới thao tác

–  <port> kết hợp một điểm cuối (endpoint) với một liên kết

–  <service> vịtrí/địa chỉcho mỗi liên kết

●  Also:

–  <import> được sửdụng đểtham chiếu tới các tài liệu XML khác

17 Vai trò của đăng ký dịch vụ

•  Đểphát hiện các dịch vụWeb cần có đăng kýdịch vụ -> cần dịch vụmô tảvà đăng kýdịch vụWeb

•  Khác biệt so với URL

Trang 11

•  Công bốdịch vụcần việc mô tả đúng đắn dịch vụWeb bằng các thông tin vềcông việc, dịch vụvà kỹthuật

•  Đăng kýdẫn đến lưu trữlâu dài các mô tảdịch vụWeb trong mục đăng kýdịch vụWeb

•  Hai kiểu mục đăng ký:

–  Mục dựa trên văn bản: cho phép khách hàng công bốthông tin bằng cách lưu các tài liệu vềdịch vụtheo XML nhưhồsơ công việc hay các mô tảkỹthuật

–  Mục dựa trên siêu dữliệu (metadata): mô tảcác điểm căn bản của văn bản nộp lên

18 Cách thức phát hiện dịch vụ

•  Phát hiện dịch vụlà quá trình định vịnhà cung cấp dịch vụ Web và lấy vềcác mô tảdịch vụWeb mà được công bốtrước đó

•  Truy vấn các dịch vụdẫn đến yêu cầu mục đăng kýdịch vụcác dịch vụWeb phù hợp với nhu cầu của bên truy vấn

–  Câu truy vấn bao gồm các tiêu chí tìm kiếm như:

•  Kiểu của dịch vụmong muốn, giá chấp nhận và sốlượng tối đa kết quảtrảvề, và được thực hiện đối chiếu với thông tin dịch vụcung cấp bởi bên cung cấp dịch vụ,

–  Phát hiện các dịch vụWeb là quá trình phụthuộc vào kiến trúc của việc đăng kýdịch vụ

•  Sau khi hoàn tất quá trình phát hiện, người phát triển dịch vụ hay ứng dụng khách cần biết chính xác vịtrí (URI) của dịch vụ Web, khảnăng, và cách giao tiếp với dịch vụ

 Tĩnh

•  Các chi tiết thực hiện dịch vụ được xác định tại thời điểm thiết kếvà việc tìm dịch vụ được thực hiện nhờ đăng kýdịch vụ

•  Kết quảcủa thao tác tìm kiếm được kiểm tra thông thường nhờ người thiết kếvà mô tảdịch vụtrảvềtừthao tác tìm kiếm được kết hợp vào lô-gíc chương trình

 Động

•  Các chi tiết thực hiện dịch vụ được trừra tại thời điểm thiết kế để xác định tại thời điểm chạy

•  Người yêu cầu dịch vụWeb phải chỉrõ các mong muốn đểcho phép ứng dụng suy ra dịch vụWeb nào mà người yêu cầu muốn nhất để gọi

•  Dựa trên lô-gíc ứng dụng chất lượng dịch vụnhưgiá tốt, hiệu năng, xác nhận an ninh, vv ứng dụng chọn dịch vụphù hợp nhất, kết nối tới dịch vụ đó và gọi

19 Vai trò và các bộ phận chức năng UDDI

•  UDDI là chuẩn đăng kýcho mô tảcác dịch vụWeb và phát hiện kèm với các tiện ích đăng kýhỗtrợcho công bốdịch vụWeb và quá trình phát hiện

•  UDDI cho phép công ty:

–  Mô tả công việc và dịch vụcủa công ty;

–  Phát hiện các công việc khác mà chúng cung cấp các dịch vụmong muốn;

–  Tích hợp (phối hợp) với các dịch vụcông ty khác

•  Việc đăng kýcông việc UDDI gồm 3 bộphận liên quan lẫn nhau:

–  “Trang trắng” (địa chỉ, liên hệ, và các thông tin liên lạc quan trọng khác):

Ngày đăng: 01/07/2016, 17:55

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w