Thông tin tài liệu:
SOA Một tập hợp các dịch vụ web. Tạo ra khả năng giao tiếp giữa các dịch vụweb. Kết nối giữa các dịch vụ web hết sức mềmdẻo, lỏng lẻo.Các mô hình lập trình trước ñây Lập trình hướng cấu trúc / SSADM(C/Pascal). Lập trình hướng ñối tượng / OOADM &CBD (C++/Java).+ kết hợp mềm dẻo, ñộc lập nền tảng,giao tiếp chuẩn & chia nhỏ công việcñến mức có thể.= Service Oriented Architecture...
Nội dung trích xuất từ tài liệu:
SOA SOAPhạm Hồng Phong - SoICT – HUST SOAKiến trúc hướng dịch vụ - Service oriented Architecture 2 SOASOA Một tập hợp các dịch vụ web Tạo ra khả năng giao tiếp giữa các dịch vụ web Kết nối giữa các dịch vụ web hết sức mềm dẻo, lỏng lẻo 3 SOACác mô hình lập trình trước ñây Lập trình hướng cấu trúc / SSADM (C/Pascal) Lập trình hướng ñối tượng / OOADM & CBD (C++/Java)+ kết hợp mềm dẻo, ñộc lập nền tảng, giao tiếp chuẩn & chia nhỏ công việc ñến mức có thể= Service Oriented Architecture 4 Tiếp cận SOACác ứng dụng Giai ñoạn trung gian: Kiến trúc hướng ñóng gói các dịch vụ ñơn lẻ dịch vụ ñược phân tách ra 5 Tiếp cận SOAVí dụ: Dịch vụ thu ngân của Ngân hàng dựatrên hướng dịch vụ Các kiểu thu ngân khác nhau tạo ra các dịch vụ khác nhau Người thu ngân ñược nghiệp vụ hóa ñể chỉ phải thực hiện loại giao dịch nào ñó. Ví dụ: o Quản lý tài khoản (mở và ñóng các tài khoản) o Tín dụng (yêu cầu phải thẩm ñịnh các ñiều kiện, tư vấn, yêu cầu cho việc thế chấp) o Gửi/lấy tiền mặt (chuyển khoản, ñặt cọc, thu hồi vốn) o Đổi ngoại tệ (mua và bán các tiền tệ nước ngoài) 6 SOAo Rất nhiều các nhân viên thu ngân xử lý các loại dịch vụ khác nhau (giúp giảm tải công việc cho công ty, tránh lỗi)o Chúng ta không biết ñược chi tiết ñiều gì xảy ra sau quầy thu ngân (ñược che chắn bởi kính chống nổ, các thanh sắt!!)o Nếu yêu cầu một giao dịch phức tạp, có thể ta phải giao tiếp với rất nhiều các nhân viên (Khách hàng giống như một ñiều phối viên giao dịch!!) 7 Thuật ngữ và các khái niệmMột dịch vụ - service là một gói các chức năng ñãñược chuẩn hóa và liên quan mật thiết với nhau Được gọi nhiều lần (theo các giao dịch khác nhau) Được hiện thực bởi một tính năng chuyên biệt Ví dụ: Quản lý Tài khoản Một dịch vụ có thể ñược phân rã & bao gồm nhiều các hàm dịch vụ. Ví dụ: Mở Tài khoản Đơn vị con nhỏ nhất bên trong các hàm dịch vụ ñược gọi là dịch vụ nguyên thủy Ví dụ: Thủ tục phát sinh Số tài khoản tiếp theo 8 Thuật ngữ và các khái niệmCác ñặc tính miêu tả ñầy ñủ về một dịchvụ Ngư i yêu c u d ch v - Service requester (“Client”) o Xác đ nh ai/ thành ph n nào s d ng d ch v o Đ i v i h , tính năng c a d ch v đư c cung c p là quan tr ng nh t, không c n bi t nó đư c th c hi n bên trong như th nào (h p đen) – quy t c đóng gói thông tin và th c thi 9 Thuật ngữ và các khái niệm Nhà cung c p d ch v - Service provider(“Server”) o Ai/thành ph n nào th c thi hay cung c p d ch v o Có trách nhi m cho vi c cung c p đ a ch d ch v , và đ m b o ch t lư ng QoS o Có th yêu c u tr phí cho d ch vo Ch t lư ng d ch v (QoS) o Bao g m t p các tham s đ đánh giá ch t lư ng o Ví d : đ tin c y, chi phí, th i gian th c thi, c p đ b o m t, d báo k t qu , các đ m b o … 10 Thuật ngữ và các khái niệmGiao diện – Interface Một giao diện sẽ chứa ñặc tả về một dịch vụ, ñược thực thi bởi một thành phần nào ñó. Giao diện ñịnh nghĩa một thỏa thuận mà thành phần thực thi nó phải tuân theo Interface có thể ñược miêu tả sử dụng các ngôn ngữ ñịnh dạng Web Services Description Language (WSDL) OMG/ISO Interface Definition Language (IDL) (for CORBA) UML Object Constraint Language (OCL) Tương tự: Java, C++ headers, . . . Các giao diện an toàn kiểu lại thường có tính chất coupling rất chặt o Các kiểu thông ñiệp khác nhau là ñược phép ñối với một thông ñiệp 11 Thuật ngữ và các khái niệmKiến trúc phần mềm: bao gồm một tập cácquyết ñịnh quan trọng về việc tổ chức/thiết kếmột hệ thống phần mềm Lựa chọn các phần tử ñã ñược cấu trúc hóa từ hệ thống, và interface cho chúng Hành vi chỉ ra việc giao tiếp/cộng tác giữa các phần tử Phân rã/bố cục của các phần tử có hành vi và có cấu trúc bên trong một hệ thống lớn Kiểu kiến trúc áp dụng cho hệ thống này 12 Thuật ngữ và các khái niệmMẫu kiến trúc – Architectural Style Định nghĩa một họ các hệ thống theo các thuật ngữ như là một khuôn mẫu của tổ chức có cấu trúc Định nghĩa o Một bộ từ vựng cho các thành phần/phần tử như client, server, filter, layer, adapter, … và các kiểu kết nối như pipe, broadcast, queue, … o Một tập các quy tắc cấu hình (rằng buộc) chỉ ra cách thức các thành phần kết hợp với nhau 13 Thuật ngữ và các khái niệmVí dụ một mẫu kiến trúc phần mềm:hướng sự kiện (event-based), repository,các máy ảo, ña tầng, … 14 Thuật ngữ và các khái niệmKiến trúc hướng dịch vụ: mẫu kiến trúcgọi là hướng dịch vụ nếu như: Nó không d ng nguyên kh i (monolithic), các kh i ch c năng chung đư c phân rã ra kh i các ng d ng & đư c cung c p thay th b i các d ch v o Các d ch v là t n t i đ c l p v i ng d ng và th hi n giao di n cho các ch c năng Thi t k các ph n t cho m t SOA o Các thành ph n: các d ch v (có th là nhi u d ch v k t h p), ngư i dùng (consumer) và nhà cung c p (provider) o Ki u k t n i: kích ho t d ch v t xa 15Thuật ngữ và các khái niệmCác quy tắc cấu hình cho một SOA oKhông phân tầng rõ rệt: việc thực thi dịch vụ có thể sử dụng các dịch vụ khác oKhông ñiều khiển hệ thống ở một nơi o trung tâm, các thành phần có thể hoạt ñộng tách rời nhau oCác dịch vụ ñược thiết kế ñể sử dụng chung 16 Thuật ngữ và các khái niệmHướng dịch vụ Là một tập các quy tắc có tổ chức ñể xây dựng các hệ thống lớn. Nó không bó buộc với bất cứ công nghệ nàoVí dụ Các dịc ...