1. Trang chủ
  2. » Tất cả

Giáo trình công nghệ phần mềm nâng cao phần 2

202 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 202
Dung lượng 19,33 MB

Nội dung

ChiTO'ng DẶC TẢ KIÊN TRÚC MỘT SÓ HỆ THÓNG DƯỢC THIÉT KÉ THEO IIƯỚNG HIỆN DẠI Đê đáp ứng yêu cầu thiẻt kẻ cho nhũĩìịỊ hệ ihổiiịỉ dụi, người ta dã mat Iillicit CÔHỊỈ sức nghiên cứu kiến trúc phù hợp với chúng Két qua, đặc la kiến trúc cua số hộ thống đux/c Ihiếl kẻ theo hurrnịỊ dại hướng phân lán, dối lutrnịỉ vù huứriịỊ dịch vụ thê nót riêng biệt, dộc đáo, many lính cơng nghệ cao Chuxrng trình bày phần đặc la kiến trúc sổ hệ thống ihiết ké theo hướng đại Học viên cần nám vững kỹ đặc la kiến írúc hai hệ IhốHỊỉ phố biến đuực íhiết ké Iheo huứtiỊỊ dụi, đủ lù huửng phân tán, hướng đối lượng hướng dịch vụ 6.1 Đặc tả kiến trúc hệ thống thiết kế tlieo huứng phân tán / Sư lược hệ thổng phân tán Việc quản lý luồng liệu sở mạng cục (Local Arear Nelwurk-IAN) với kiến trúc máy quản lý file đơn giản thể chưa đáp ứng yêu cầu thực tế phức tạp, kết nối máy tính thành mạng, NSD dùng chung liệu tài nguyên khác cùa mạng máy in, máy fax, rẻ dùng riêng lẻ Vì thế, hệ thống phân tán đuợc thiết kế phát triển Chúng có ý nghĩa thực tiễn to lớn hoạt động hàng ngày tổ chức thành tựu việc phát triển HTTT Thiết kế hệ thống phân tán có nhiều điểm giống với thiết kế hệ thống vị tri Sự khác hệ thống phân tán đuợc phân bố số địa điểm khác Khi thiết kế hệ thống phân tán, người ta 151 quan tâm đến nhiều mặt tính khả thi, tinh sẵn sàng, sống hệ thống triển khai nhiều địa điểm Các hệ thống phân tán gồm nhiều máy trạm/khách, máy chù/dịch vụ, mạng, nhiều địa điểm, nhiều liệu, Vì nhiều địa điểm có nguy xảy cố nên cần phải sử dụng nhiều chiến lược khác để thiết kế triển khai chúng Khi thiết kế hệ thống phân tán cần ý đến tính cân đối ba yếu tố tác động đến tinh thi, s ự sồng linh sẵn sàng cùa hệ thống Đe có thiết kế hiệu quả, cần nắm vững đặc trưng kiến trúc sừ dụng để trợ giúp hệ thống phân tán chia sẻ liệu Nói khác đi, cần định xem có cần phân tán liệu xử lý số địa điểm (trạm) không chọn phương án phân tán cần phải lưu ý điểm sau: 1- Xác định kiến trúc mơ hình phân tán tổng thể bao gồm định vị trạm cần phân tán, loại hình phân tán sử dụng cho trạm; 2- Tiến hành cân đối yếu tố đuợc phân tán bao gồm phần tử liệu hoạt động xử lý trạm; 3- Thiết kế CSDL phân tán; 4- Thiết kế hệ thống chương trình tương ứng Khi thiết kế hệ thống phân tán cần ghi tâm ưu hạn chế hệ thống phân tán: a-Về ưu điếm: 1- Tăng cuờng khả cùa hệ thống liên quan đến tính dư thừa; 2- Kiểm sốt liệu địa phương theo hướng hoàn thiện tich hợp quản trị liệu tù xa; 3- Tăng cường thành phần ứng dụng CSDL mà không làm cản trở NSD; 4- Đáp ứng nhanh hầu hết ứng dụng sử dụng liệu trạm b-Về han chế: 1- Phần mềm đắt phức lạp; 2- Phài xử lý thay đổi thông báo địa điếm; 152 3- Khó kiêm sối tinh tồn vẹn (Jừ liệu với nhiều ban Hậu dut/c phân bố rộHỊỊ rãi; 4- Đáp ú tìịỉ chậm nhu cầu trường hợp cúc phan iniịỊ dụng không dược phân bo phù hợp vời việc sữdụiiịỉ chúng Để đáp ứng mục tiêu cung cấp dịch vụ truy nhập liệu cho NSD nơi khác nhau, hệ thống phân tán cần có tính “trong suốt địa phưưHỊỊ” Tính suốt địa phương hiểu NSD vị trí (trạm) mạng yêu cầu liệu không cằn biết liệu họ cần lưu trữ đâu Các yêu cầu lấy liệu hay cập nhật liệu trạm đáp ứng tự động cách hệ thống gừi thông tin cần thiết đến trạm 6.1.2 Tổ chức hệ thống theo mạng địa phương Bằng việc kết nối bên máy tinh, người dùng có thề sừ dụng chung liệu tài nguyên khác mạng máy in, máy fax, nhu rẻ dùng riêng lẻ Mạng LAN trợ giúp mạng máy tính cá nhân với kho liệu riêng chia sè thiết bị phần mềm Một máy tính gán nhiệm vụ cùa máy chù để lưu trữ CSDL ứng dụng Các thành phần cùa hệ quản trị CSDL trợ giúp việc truy nhập từ nhiều người dùng vào CSDL dùng chung Trong môi trường LAN, tất cà thao tác liệu diễn máy trạm, liệu yêu cầu Một hay số máy dịch vụ file gắn vào mạng LAN Một máy dịch vụ file thiết bị quản lý hoạt động file phục vụ máy trạm kết nối mạng LAN Trong cấu hình máy dịch vụ file, máy djch vụ file có phần đĩa cứng dành cho máy trạm Chương trình máy trạm tham chiếu đến file đĩa đặc tả đường dẫn đến thư mục file [17], Khi sử dụng CSDL môi trường máy dịch vụ file, máy trạm phép sử dụng chương trình ứng dụng CSDL Như vậy, có CSDL máy dịch vụ file nhiều bàn cùa hoạt động bình thường máy trạm hoạt động 153 Máy khách Máy dịch vụ file Ycu cầu liệu cùa khách Hình 6.1 Kiến trúc máy dịch VMfile Đặc trung nguyên thủy mạng LAN dựa máy trạm tất thao tác liệu thực máy trạm, máy dịch vụ file Máy dịch vụ file đơn giản thiết bị lưu trữ liệu dùng chung mở rộng cùa máy trạm Như vậy, máy trạm làm việc có yêu cầu, máy dịch vụ gửi toàn file tương ứng qua mạng đến máy trạm, thao tác liệu thực Các hoạt động an toàn thực máy trạm Chú ý rằng, kiến trúc máy dịch vụ file mạng LAN có hạn chế sau: 1- Sự di chuyển liệu diễn nhiều mạng; 2- Các máy trạm cần có cấu hình phải đủ mạnh; 3- Việc kiểm sốt liệu phi tập trung 1.3 Tồ chức hệ thống theo kiến trúc Client-Server Thuật ngữ Client-Server chi khái niệm chia sẻ công việc liên quan xử lý liệu máy khách (Client) máy phục vụ (Server), máy phục vụ có cơng suất mạnh client cỉiení client Hình 6.2 Kiến trúc Client-Server với cấu hình đơn máy phục VỊ/ Kiến trúc Client-Server cải tiến hệ thống dựa mạng LAN Kiến trúc hướng tới liệu xừ lý ứng dụng phân chia 154 má' khách (máy trạm) máy dịch vụ Máy khách thường quàn lý giao diệi trinh diễn liệu, máy dịch vụ CSDL đại diện cho việc lưu trữ CSD^ truy nhập đến nó, xừ lý truy vấn Kiến trúc Client-Server tiêu biểu đưcc đặc tà hinh 6.3, máy khách gùi yêu cầu liệu cùa tới máy dịch vụ mảy dịch vụ trả lại máy khách kết yêu cầu /inh 6.3 Kiến trúc Client-Server với cấu hình đa máy phục vụ Tring kiến trúc Client-Server, tất hoạt động phục hồi, an toàn CSDL VI quàn lý truy nhập tương tranh tập trung máy dịch vụ Các chức CS3L trung tâm thường gọi “máy CSDL” môi trường Client-Sirver Ở náy dịch vụ, yêu cầu liệu thực hiện, chi liệu kết |uả đáp ứng yêu cầu gùi máy khách qua mạng Như vậy, má) dịch vụ cung cấp dịch vụ CSDL chung cho máy khách Ở lây, kho lưu trữ liệu làm nhẹ bớt gánh nặng liệu máy phục vụkhác Máy phục vụ chuyên dụng máy hoạt động máy phục vụchứ không kiêm ln vai trị cùa máy khách hay trạm làm việc Máy phục vụ ;hun dụng có tính chun dụng vi chúng tối ưu hoá để phục vụ nhanh nlững yêu cầu khách hàng mạng, để bảo đàm an tồn cho cà íle thư mục Mạng dựa máy phục vụ trở thành mơ hinh chuẩn clo hoạt động mạng Vì mạng phát triển nhanh quy mô lẫn lưu lượng nên cần nhiều máy phục vụ thay có Phân phối tác vụ nhiều máy phự: vụ bảo đảm tác vụ thi hành theo cách thức hiộu c ó hể có [8], 155 K h o I MI trữ (lữ liệu C ú c hệ lliốnỊỊ trung gian Hình 6.4 Kiến trúc Client-Server với cấu hình có máv phục vụ chun dung Các ứng dụng xây dựng sờ kiến trúc Client-Server khác với hệ thống CSDL tập trung máy lớn Điều khác là, máy khách phần thông minh hệ thống xử lý ứng dụng Nói cách khác, chương trình ứng dụng đuợc người dùng thực máy khách mà máy dịch vụ Còn máy dịch vụ quản lý tất hoạt động truy nhập liệu chức kiểm tra Trong đó, mơi trường máy lớn, tất phận cùa HTTT thực quản lý máy lớn Một ưu điểm khác kiến trúc Client-Server khả ghép nối môi truờng máy khách với môi trường máy dịch vụ Máy khách gồm nhiều loại khác Điều có nghĩa là, dùng hệ thống ứng dụng để sinh lệnh gửi yêu cầu liệu đến đến máy dịch vụ (chương trình viết ngơn ngữ khác nhau) miễn có giao diện chương trình ứng dụng cho máy CSDL Tóm lại kiến trúc Client-Server có ưu điểm sau: 1- Cho phép nhận nhiều lợi ich từ công nghệ máy trạm mini; 156 2- Cho phép thực hầu hết xù lý gần nguồn liệu xừ lý, nhờ rút ngan thời gian chi phí lưu thơng mạng; 3- Tạo điều kiện sử dụng giao diện đồ họa kỹ thuật trình diễn trực quan thường sẵn có máy trạm; 4- Khuyến khích chấp nhận hệ thống mờ 6.1.4 Các đặc trưng nuiy dịch vụ file kiến trúc Cliení-Server Cả hai mơ hình máy dịch vụ file cấu trúc Client-Server sử dụng máy tính cá nhân, máy trạm nối với mạng LAN Trong kiến trúc dịch vụ file trợ giúp phân tán liệu kiến trúc Client-Server trợ giúp phân tán liệu phân tán xử lý Bàng 6.1 S ự khúc máy dịch vụ file kiến trúc Client-Server Đặc trư ng M áy dịch vụ file Kiến trúc C lient-Server Xử lý Chì máy khách Cả máy khách máy dịch vụ Truy nhập liệu Thấp, máy khách Cao, máy dịch vụ đảm đồng thời thực nhiệm An toàn toàn vẹn Thấp, máy khách quản lý Cao, máy dịch vụ đảm CSDL nhiệm Sử dựng mạng File lớn, chuyển file Truyền liệu nhiều mức Bảo trì phần mềm Thấp, chi máy dịch vụ Hỗn hợp, số phần mềm gửi đến máy khách Phần hệ Ghép nối máy khách Ghép nối máy khách thống, mềm dẻo cứng máy dịch vụ máy dịch vụ phần mềm phối hợp phối hợp 157 6.1.5 Các thành phần mơ hình Client-Server Hiện nay, người ta đưa vào mơ hình Client-Server nhiều chức hệ thống ứng dụng khác dựa ba thành phần sau [17]: 1- Quản trị d ữ liệu, chức quản lý tương tác phần mềm, file CSDL, bao gồm việc lấy liệu, truy vấn, cập nhật, an tồn, kiểm tra tương tranh phục hồi 2- Trình diễn liệu, chức quản lý giao diện phần mềm, người dùng hệ thống, bao gồm hiển thị, in biểu báo thẩm định đầu vào hệ thống 3- X lý liệu, chức chuyển đổi vào thành bao gồm từ tổng hợp đơn giản đến mơ hình toán học phức tạp Các kiến trúc Client-Server khác phân tán chức kể cho máy khách, máy dịch vụ hay hai Theo cách phân tán có đến 27 mơ hình khác nhau, có mơ hình phổ dụng (các bảng từ 6.2 đến 6.7) Công nghệ cho phép phát triển ứng dụng sử dụng sử dụng số mơ hình thông qua công cụ CASE mà không cần phải tạo mã chương trình riêng cho loại 6.1.6 Những dạng tiên tiến phổ dụng kiến trúc Cỉỉent-Server 6.1.6.1 Trình diễn thơng tin phân lán Hình thức trình diễn phân tán kiến trúc Client-Server sử dụng để làm ứng dụng máy dịch vụ gửi cho máy khách Trong kiến trúc Client-Server, công việc gọi “máy quét hình” làm việc máy khách để định dạng lại cách đơn giản liệu máy dịch vụ quản lý Kết làm dễ dàng việc sử dụng báo cáo, biểu mẫu giao diện mà không phá hủy phải viết lại hệ thống cũ Trình diễn phân tán hạn chế hoạt động cùa biểu mẫu, báo cáo tồn tại, cần đơn thể trinh diễn máy khách máy dịch vụ thay đổi bảo trì đồng thời 158 Hàng 6.2 Trình diễn thơng tin phân lún Chức Máy khách Máy dịch vụ Quản lý liệu Quản lý liệu Phân tich liệu Phân tích liệu Trinh diễn liệu Dữ liệu trình diễn Dùng liệu gừi cho máy dịch vụ định khách, dạng để trình diễn cho nghệ trinh diễn cùa máy người dùng dịch vụ sữ dụng cơng 6.1.6.2 Trình diễn lừ xa Kiểu trình diễn từ xa cùa mơ hình Client-Server đặt tất cà chức trình diễn liệu máy khách nên phần mềm máy khách có khả trình diễn liệu định dạng Kiến trúc tạo mềm dẻo lớn so với kiến trúc trình diễn phân tán Khi người dùng cần thay đổi biểu mẫu, báo cáo hay nội dung chi cần bảo trì máy khách Ngày nay, định dạng siêu văn (HTMT) trở thành định dạng chung cho hệ mạng toàn cầu Internet Vỉ máy khách hệ trang bị sẵn phần mềm trình duyệt HTML (như Netscaps, Internet Explorer, .) trình duyệt thơng tin lấy từ máy dịch vụ hệ thống mà kết nối Báng 6.3 Trình diễn lừ xa Chức Máy khách Máy dịch vụ Quản lý liệu Quản lý liệu Phân tich liệu Phân tích liệu Trình diễn liệu Dữ liệu phân tích máy dịch vụ định dạng để trình diễn cho người dùng 159 6.1.6.3 Quàn lý dĩr liệu từ xa Hình thức quản lý liệu từ xa kiến trúc Client-Server đặt phần mềm máy khách, trừ phần mềm quản lý liệu Trên hệ thống mạng tốc độ cao, tất liệu cần cho phân tích (mà khơng phải cho trình diễn) truyền từ máy dịch vụ sang máy khách Trên máy khách sử dụng phần mềm (Excel, M atlab, ) để xử lý liệu có Như CSDL máy dịch vụ sử dụng chung quản lý tập trung Ngày nay, phát triển kỹ thuật phần cứng, máy khách đủ mạnh (cả phần cứng phần mềm), đủ khả để lưu trữ liệu lớn tiến hành xử lý cần thiết Ràng 6.4 Quán lý d ữ liệu từ xa C hức Máy khách Ọuản lý liệu Phân tích liệu Máy dịch vụ Quản lý liệu Dữ liệu thô lấy từ máy dịch vụ phân tích Trình diễn liệu Trình diễn tất liệu 6.1.6.4 Phăn tán chức Kiến trúc Client-Server với chức phân tán chức phân tích tên máy khách máy dịch vụ, để toàn phần trình diễn liệu máy khách, tất chức quản lý liệu máy chù Kiến tnic cho phép cài đặt chức phân tích máy mà có chi phí hiệu Chẳng hạn, phân tích địi hỏi nhiều liệu đặt máy dịch vụ mà lưu trữ phần lớn liệu cần thiết cho việc phân tích giảm lưu lượng thơng tin cần truyền mạng Tuy nhiên, việc phát triển, kiểm thử bảo tri khơng tránh khỏi khó khăn liên quan đến việc bảo đảm phối hợp quán chức phân tích phân tán máy khách máy dịch vụ 160 nên ranh giới thông qua dịch vụ Các tầng dịch vụ thiết kế giai đoạn bao gồm tầng phổ khúc (orchestrantion'), kết xác định quy trình nghiệp vụ hình thức - Rước 3: Phát triển dịch vụ (Service development) Trong bước giai đoạn xây dựng thực tế Ở vấn đề tảng phát triển vào hoạt động, không quan tâm tới loại dịch vụ Một cách cụ thể, lựa chọn ngơn ngữ lập trình, mơi trường phát triển định mẫu dịch vụ quy trinh nghiệp vụ tầng phổ khúc phù hợp với thiết kế - Bước 4: Kiểm thừ dịch vụ (Service testing) Để đưa tiềm cho việc dùng lại bao gồm trạng thái truớc được, dịch vụ yêu cầu trải qua nghiêm ngặt cùa việc kiểm thử trước triển khai thành sản phẩm - Rước 5: Triển khai dịch vụ (Service deployment) Giai đoạn thực thi đưa đến việc cài đặt cấu hình cho thành phần phân tán, giao diện dịch vụ nhiều sản phẩm trung gian (middlevvareproducts) kết hợp với thành máy chủ (Server) - Ruớc 6: Quản trị dịch vụ (Service administration) Sau dịch vụ triển khai, vấn đề quản lý ứng dụng trờ thành hàng đầu, mối quan tâm cho hệ thống phân tán, ứng dụng dựa thành phần (Component based applications) việc xem xét chúng dịch vụ tổng thể Các bước chia nhỏ tùy thuộc vào độ phức tạp tốn Đó chưa phải quy trinh bắt buộc xây dựng dự án SOA thành công Trong số trường hợp, cần thêm vào loại bỏ số bước để phù hợp với yêu cầu cụ thể Kiến trúc hướng dịch vụ đưa nhằm loại bỏ trùng lặp dư thừa qua việc tái sừ dụng tích hợp Cách đơn giản để bắt đầu với SOA thử với dịch vụ mà biết có nhiều cài đặt nhiều ứng dụng khác nhau, sau bắt đầu xây dựng kế hoạch chiến lược để loại bỏ dịch vụ dư thừa Quy trình cài đặt giúp đáp ứng yêu cầu cùa tổ chức ẩn sau bước chuyển đổi thành công sang SOA 338 Khi thực dược quy trình này, có cơng cụ hiểu biết để mờ rộng quy mô áp dụng SOA tố chức cùa ì 0.3.5 Thiết k ế vù thực luonỊỊ công việc Một vấn đề cơng nghệ SOA tạo mẫu (pattern) sứ dụng ứng dụng Trong ngôn ngữ mẫu, mẫu vĩ mô Macroflow thiết lặp khuôn cảnh (kịch bán) xếp đặt khải niệm sở cho kiến trúc tồng Mầu cùa kiến trúc tích hợp dựa trcn q trinh mơ tả cách đế thiết kế kiến trúc dựa lớp C O I) cho tầng tổng hợp dịch vụ, mẫu khái niệm Macromicroflow [14], Mô hinh kiến trúc cùa SOA tổ chức thành hai tầng chinh sau: 1-Tầng tổ hợp dịch vụ; 2-Tầng dịch vụ ứng dụng nghiệp vụ Tầng tổ bợp d ị d i vụ Tâng té hợp lng vĩ mơ Tăng tích hạp luông vĩ mô Tăng xứ lý Táng thực luỗng vi mỗ T ầ n g dịch vụ ứ n g d ụ n g nghiệp vụ Hình 10.15 Cấu trúc phán cấp cùa SOA /9 / Tầng tồ hợp dịch vụ (Service Composition Layer) phân chia thành tầng con: tầng tổ hợp luồng vĩ mõ (Macrollow Composition), lớp tích hợp luồng vĩ mơ (Macroflow Integration), tầng xừ lý (Dispatching) tầng thực luồng vi mơ (Microflow Execution) Trên tầng tổ hợp có luồng: 339 /-Luồng xun suốt (ỉ.onỵ-nmniĩìỊ’ blow), luồng mơ tả định hướng nghiệp vụ doanh nghiệp, gọi luồng vĩ mô (macrọflow); 2-Luồng giao dịch ngắn (Shorl-lransơclional Ftaw), mơ tả quy trình nghiệp vụ tin học hóa, gọi luồng vi mơ (microflow) Cả hai macroflows microflows làm mịn dần Sự khác cùa loại làm mịn chỗ sử dụng trình làm mịn luồng qui trình nguyên thủy Ọui trinh nguyên thủy mẫu nguyên thủy tổng qt sử dụng để mơ hình hố tất loại tiến trình cơng việc Các mẫu nguyên thủy cho phép phát triển mô hình nghiệp vụ dựa khái niệm kiến trúc tiến trình hướng thành phần Các mẫu nguyên thủy UML 2.0 sừ dụng để mơ hình hố macrlovvs microflows Mỗi thành phần tiến trình làm mịn đần cách sử dụng mơ hình macroflows biểu diễn cho hoạt động bân cần thiết mô hinh Với kiến trúc này, phần tù cùa SOA biểu diễn tổng thể sau: C ác tiến trình nghi ép vụ C ic ứng dụng r a G iao diện người dừng C ác bố trí dịch Các dịch vụ tô hợp C ác ứng dựng dịch vụ Các dịch vụ sở Hình 10.16 Các phần từ cùa SOA /9 / Hình 10.17 thể cấu hình kiến trúc tích hợp dựa vào trinh, nhiều macroflow engines thực macroflows Processintegration adapters sử dụng để tích hợp luồng cơng việc vĩ mô theo 340 phương diện kỹ Tầng xử lý cho phép mờ rộng số lượng máy xứ lý vi mơ (microflow engines) Hình /0.17 Minh họa cấu hình kiến trúc dựa vào trình 114] Oracle thông báo việc phổ biến rộng rãi sản phẩm Oracle® SOA Suilư - sản phẩm lớp dựa chuẩn, sừ dụng nhằm mục đích giúp dễ dàng xây dựng, ứng dụng quàn lý kiến trúc hướng dịch vụ [22], Những tiền đề cùa hệ thống kiến trúc hướng dịch vụ phân tách ứng dụng khỏi ứng dụng khác từ đó, ứng dụng tự trị điều kiện riêng [14] Vì vậy, ứng dụng khác tổ chức có nhu cầu trao đổi thơng tin với (tích hợp ứng dụng) thi họ phải giao tiép theo quy trinh tiêu chuẩn Việc trao đổi thông tin thực hiộn thông qua thông điệp (Message) trao đổi theo qui định cùa doanh nghiệp Các thông điệp thường sứ dụng thông điệp XML Đối với trường hợp cùa kiến trúc hướng dịch vụ đơn giản, xem xét tin nhằn từ XML nhiều mẫu kiện giao tiếp hàng ngày Các thông điệp phải gứi cho đơn vị nơi thực nhiệm vụ phát sinh Các nhiệm vụ gừi dạng tin nhắn XML đơn giản ứng dụng nhận để xừ lý 341 Hỉnh 10.18 mô tả trao đổi thông điệp đại lý giao thực địch vụ tương ứng qua qua kênh truyền thông Các thông điệp chuyển đến điểm đến thích hợp thơng qua định tuyến thơng điệp (Message Router) Đại lý có sẵn cho ứng dụng, chi có nhiệm vụ thực đại lý cung cấp đầu vào cho NSD, cho kênh truyền tin tiếp nhận tin nhắn đến cùa ứng dụng Hình 10 IH M ột khung kiến trítc SOA Các đại lý đại diện ứng dụng, cung cấp thông điệp đưa vào hàng đợi chuẩn Tất đại lý bên trái thực dịch vụ chương trình ứng dụng gửi kết (thông điệp XML) vào hàng đợi Các kênh truyền thông chịu trách nhiệm xử lý hàng đợi (queues) Ngồi ra, kênh truyền cịn chịu trách nhiệm độ tin cậy cùa thông điệp bảo đảm thực theo mức độ ưu tiên dịch vụ Chúng bảo đảm tin nhắn nhận gốc Thông tin trao đổi với mơ hình kiến trúc dịch vụ hướng tới đơn giản cách sử dụng XML Tin nhắn nhanh chóng chuyển giao cho định tuyến (router) Các thơng điệp kênh chuyển đổi sang định dạng khác Sự chuyển đổi phải tuân theo sơ đồ cụ thể dựa quy tắc kinh doanh Hơn nữa, điều thường dễ dàng cho đại lý để gửi tài liệu XML thơ sau chuyển đổi thơng điệp thích hợp cùa SOAP 342 Chẳng hạn, đại lý trang dịch vụ web phục vụ gửi tin nhắn SOAP, đưa tin nhắn vào hàng đợi kênh thơng báo khơng CỊI1 trách n h i ệ m chi đ ọ c tin n h a n v k i ế m tra h i ệ u lực c ù a n ó t h e o s đ kinh doanh sở quy định Nghiên cứu khung công việc (Framework), có the áp dụng kịch bán đơn gián, đă nhận thông báo gừi từ ứng dụng X tới cho ứng dụng Y [14]: - Úng dụng X có đại lý cung cấp thông tin, dịch vụ web Một thông báo ứng dụng X gửi cho dịch vụ web Các dịch vụ web chuyến tin nhan vào hàng đợi; - Kênh truyền thông (Channel) đọc tài liệu thơ XML từ hàng đợi Nó kiềm tra phù hợp với mẫu XML chuyển thơng tin tới định luyến (router) Kênh truyền thơng triển khai thực dịch vụ Window theo dõi dịch vụ hàng đợi; - Router dễ dàng tổ chức để sữ dụng bời kênh Router nhận tin nhẳn tìm nhớ cache biểu thúc quy Xpath ánh xạ tới số cuối cụ thể (endpoints) Nếu thông báo đảnh giá phù hợp thi gửi đến đại lý cùa ứng dụng Y thông qua yêu cầu (invocation) động cùa hiệp hội chi chung thông qua web proxy; - ứ n g dụng Y có thịng tin XML, cị thể phân tích cú pháp thực cơng việc theo u cầu Cache cài đặt bảng Irong CSDL file tin đơn giàn; Xét kịch bàn có số lựa chọn khác khung công việc nêu Đó tin nhắn SOAP hồn tồn thơng qua khn khổ cơng việc Có thề sừ dụng đại lý mà không cần phải sử dụng dịch vụ web áp dụng cho loại ứng dụng Những kỹ thuật áp dụng theo cơng nghệ WSE 2,0 Vì SOAP gừi tin nhắn khơng chi qua HTTP, TCP 343 10.3.6 Các m ức độ thực kiến trúc h in m g (tịch vụ Việc sử dụng kiến trúc hướng dịch vụ không bj giới hạn cho tổ chức lớn Trong thực tế, kiến trúc tạo hội cho tổ chức vừa nhỏ Giả sử, doanh nghiệp nhỏ sừ dụng dịch vụ việc nhận hoá đơn: đùng dịch vụ mạng để tạo dịch vụ nhận hoá đơn Các hoá đơn lưu trừ dịch vụ hệ thống kế tốn máy tính cá nhân người dùng ket nối đến để nhận hố đơn cách sử dụng dịch vụ mạng Các hố đơn sau cập nhận cách tự động máy tính cá nhân, Bằng cách này, tổ chức nào, không phụ thuộc vào quy mơ lớn hay nhỏ, nhận lợi ích từ việc sử dụng kiến trúc hướng dịch vụ Một tổ chức dùng nhiều cách khác để tiếp nhận kiến trúc hướng dịch vụ, tuỳ thuộc Vâo mục tiêu ràng buộc CNTT Các điềm đầu vào Chuyền đồi nghiệp vụ theo yêu cầu Chuyền đồi CNTT rộng lớn tTên toàn tổ chúc Tích hợp chúc nghiệp vụ theo định hướng dịch vụ Cài đặt dịch vụ web đơn lẻ Hình 10.19 Các mÍK hực kiến trúc hướng dịch vụ /2 / Ghi chú: - Đầu vào 1: Tạo dịch VI từ nhiệm vụ ứng dụng cũ; - Đầu vào 2: Tích hợp c í dịch vụ từ nhiều ứng dụng bên bên tổ chức để thực nục đích nghiệp vụ; - Đầu vào 3: Một cài đặtđược kiến trúc cho phép tích hợp nhiều chức nghiệp vụ tồn mít tổ chức; 344 - Dầu vào 4: Chuyển đối rộng khắp mô hình nghiệp vụ có trién khai mơ hinh nghiệp vụ Các mức thuc hiên kién trúc hướnu dich vu bao gồm: Mức i Cài đặt dịch vụ riêng lẻ Mức tạo dịch vụ từ nhiệm vụ có ứng dụng ứng dụng có Kiến trúc hướng dịch vụ đcm lại khả thiết kế ứng dụng hệ thống cung cấp dịch vụ cho ứng dụng khác thông qua giao diện xuất Cách tạo ứng dụng đưa đến mơ hình lập trình mạnh hơn, linh hoạt hơn, giảm chi phí cà phát triển bào trì Mirc : Tich hợp hướng dịch vụ chức nghiệp vụ Mức tích hợp hướng dịch vụ Bước bao gồm việc tích hợp dịch vụ tù nhiều ứng dụng khác cà bên lẫn bẽn doanh nghiệp để phục vụ cho mục đích nghiệp vự Mức độ phải hỗ trợ nhiều kiểu tích hợp, bao gồm: - Tích hợp ứng dụng: gồm phát triển giao diện để thể ứng dụng có; - Tích hợp thơng tin: gồm liệu doanh nghiệp liệu phịng ban; - Tích hựp giao diện: gồm tích hợp qua tích hợp, xếp úng dụng dịch vụ với nhiều giao diện; - Tích hợp hệ thống: gồm kết nối Ihệ thống không đồng nhất, hệ thống có tích hợp ứng dụng M úc 3: Chuyển đổi doanh nghiệp CNTT ció quy mơ lớn Mức cài đặt SOA rộng cài đặít kiến trúc hố cho phép tích hợp nhiều chức nghiệp vụ toàn dioanh nghiệp Mức 4: Chuyển đổi nghiệp vụ theo ycu cằiu Mức mức cuối phát triềnI tlieo kiến trúc hướng dịch vụ Mức định hướng chiến lược, hướng tới viịệc chuyển đổi mở rộng cùa mơ hình nghiệp vụ có việc triển khai (f mơ hình nghiệp vụ 345 TÓM TẢT CHƯ ƠNG SOA “Khái niệm hệ thống útĩịỉ dụng xem mội ngiiồn cung cắp dịch vụ" Điểm khác biệt cùa SOA so với mơ hình có kiến trúc tuomg tự cung cấp khả giao tiếp thành phần hệ thống sử dụng thông điệp dựa chuẩn giao tiếp chuẩn hóa Chính nhờ đặc điểm này, hệ thống SOA trờ nên độc lập với tảng Các dịch vụ hoạt động nền tảng khác giao tiếp với nhờ vào giao diện giao tiếp chuẩn hóa để cộng tác xử lý tác vụ Các thành phần dùng để cung cấp chúc dịch vụ Các thành phần sử dụng dịch vụ, thành phần cung cấp dịch vụ thành phần môi giới dịch vụ nơi đăng ký dịch vụ định nghĩa mô tả rõ dịch vụ Dịch vụ khái niệm then chốt SOA Có thể hiểu dịch vụ chức (mô-đun) thực qui trình nghiệp vụ Nó xác định rõ ràng, tự chứa, không phụ thuộc vào ngữ cảnh tình trạng dịch vụ khác Một cách bản, SOA tập hợp dịch vụ kết nối “mềm dẻo” với (nghĩa ứng dụng “nói chuyện” với ứng dụng khác mà không cần biết chi tiết kỹ thuật bên trong), có giao tiếp (dùng để gọi hàm dịch vụ) định nghĩa rõ ràng độc lập với tảng hệ thống, tái sử dụng SOA cấp độ cao cùa phát triển ứng dụng, trọng đến qui trinh nghiệp vụ dùng giao tiếp chuẩn để giúp che phức tạp kỹ thuật bên Các dịch vụ SOA có đặc điểm quan trọng như: Các dịch vụ tìm kiếm được; Các dịch vụ có tính liên thông; Các dịch vụ không gắn kết chặt chẽ với nhau; Các dịch vụ phức hợp, bao gồm nhiều thành phần, đóng gói mức cao; Các dịch vụ suốt vị trí; Các dịch vụ có khả tự hàn gắn Thiết kế SOA tách riêng phần thực dịch vụ (phần mềm) với giao tiếp gọi dịch vụ Điều tạo nên giao tiếp quán cho ứng dung khách (Client) sử dụng dịch vụ bất chấp công nghệ thực dịch vụ 346 Vi uu điểm quan trọng SOA kết nối “mềm déo” (nhờ chuẩn hóa giao tiếp) vừ tái sư dụng ncn dịch vụ sử dụng với trình Client chạy nen tảng viết với ngôn ngữ Việc thiết kề dịch vụ phải tuân theo nguycn tắc định SOA xây dựng dựa chuẩn phố bien SOAP XML Hai chuẩn đóng vai trị thành phần xương sống để truyền nhận thông điệp đối tượng truyền thơng Có ba mơ hình triển khai SOA là: Service registy (đăng ký dịch vụ), Service broker (môi giới dịch vụ) service bus (tuyến dịch vụ) Việc phát triến hệ thống dựa kỹ nghệ hướng dịch vụ phái tuân theo số nguyên tắc định Mối quan tâm việc xây dựng dịch vụ theo kiến trúc hướng dịch vụ dịch vụ nghiệp vụ cần phải chuẩn hố có mức trừu tượng cao xây dựng triển khai, cẩn tập trung ý vào quy trình xác định dịch vụ bảo đàm việc cài đặt SOA trờ lên hiệu mong đợi Vòng đời phát triển định nghĩa dịch vụ cho phép phát triển triển khai hệ thống SOA hiệu Hiện chưa có quy trình cụ thể để phát triển ứng dụng theo kiến trúc hướng dịch vụ, nhiên, triển khai cần đưa số bước định phát triển hệ thống CÂU HỎI CHƯƠNG 10 10.1 Điểm khác biệt cùa SOA so với mơ hình có kiến trúc tương tự? 10.2 Các làng cùa SOA dùng để biểu diễn gì? 10.3 Sơ lược thành phần cùa kiến trúc hướng dịch vụ? 10.4 Hệ thống SOA có tinh chất đặc biệt gì? 10.5 Có thể hiểu dịch vụ thc nào? 347 10.6 Các djch vụ SOA có đặc điếm gi? 10.7 Tư tường cùa thiết kế SOA muốn tách với Cíi gì? điều giúp ích cho ứng dụng phía khách muốn sử dụng dịch vụ? 10.8 Nhò ưu điểm quan trọng cùa SOA mà dịch vụ sừ dụng với trình Client chạy tảng viết với ngôn ngữ bất kỳ? 10.9 Tại phải quan tâm đến vòng đời phát triển hệ ;hống SOA? 10.10 Khi xây dựng tiến trình cụ thể để phát triển ứng dụnị: theo kiến trúc hướng dịch vụ, Anh/Chị làm pha đầu tiên? 348 TÀ I LIỆU THAM KHẢO A-T1ẾNG VIỆT [ 1] Nguyễn Văn Ba (2003), Phún lícli Ihiél ké hệ thồng Ihônịỉ tin -Các phtam gpháp cáu trúc, Nhà xuất Đại học quốc gia Hà Nội [2], Đồn Văn Ban, Nguyễn Thị Tĩnh (2011), Giáo trình I’hàn tích thiết kế hệ thống hướng đoi tuợng UML, Nhà xuất Đại học Sư phạm [3], Collongues A., J.Hugues, B.Laroche, Mens (1994), Phuung pháp thiéí ké hệ thống thõng till tin học h(Hi phục vụ quan lý doanh nghiệp, Nhà xuất Khoa học kỹ thuật, Bản dịch Truơng Văn Tú [4],Thạc Bình Cường, Nguyễn Đúc Mận (2011), Kiểm thư đâm báo chát lượng phần mèm, Nhà xuất Bách khoa, Hà Nội [5], Đặng Vãn Đức (2002), Phân tích Ihiết kế hướng đối lượng UML (Thực hành với Rational Rose), NXB Khoa học Kỹ thuật, Hà Nội [6], Nguyễn Xuân Huy (1996), Giáo trình Cơng nghệ phần mềm, Đại hpc Tổng hợp TP Hồ Chí Minh [7], Đỗ Xn Lơi (1999), c ấ u trúc d ữ liệu giải íhuậl, tái lần thứ 5, Nhà xuất Thống kê [8], Microsoft (1999), Networking Essentials (Mạng bàn), Bản tiếng Việt cùa Ban Biên dịch VN-GUIDE, Nhà xuất Thống kê [9], Lê Văn Phùng (2014), K ỹ nghệ phần mềm, Nhà xuất Thông tin Truyền thông, tái lần [ 10], Lê Văn Phùng (2014), Kỹ thuật phân lích thiếl kế hệ thống thơng Un hướng cấu trúc, Nhà xuất Thông tin Truyền thông, tái lần [11] Lê Văn Phùng (2014), Các mô hình CƯ bùn phân tích thiếí kè hướng đổi luựìig, Nhà xuất Thơng tin Truyền thơng, tái bàn lần 349 [12] Lê Văn Phùng, Lê Hương Giang (2015), K ỹ nghệ phần mềm nâng cao, Nhà xuất Thông tin Truyền thông, tái lần ] [13] Lê Vãn Phùng (2016), Hệ thống thông Un quán lý, Nhà xuất Thông tin Truyền thông, tái lần [14] Viện CNTT, Viện Hàn lâm Khoa học C ông nghệ Việt Nam, Nghiên cúi! ím g dụng kiến trúc phần mềm htrírng dịch VM quản lý hành nhà nước, Đề tài CSCL’08.01, Doãn Ngọc Liên (chủ nhiệm), Hà Nội, 2008 [15], Viện CNTT, Viện Hàn lâm Khoa học Công nghệ Việt Nam (2009), Nghiên cứu điện loàn đám mây ứng dụng, Đề tài sở, Hà Nội [16] Nguyễn Văn Vỵ, Nguyễn Việt Hà, Giáo trình kỹ nghệ phần mèm, Nhà xuất Giáo dục Việt Nam, 2009 [17] Nguyễn Văn Vỵ, Gián trình phân tích thiét kè hệ ihotiỊ’ thông tin NXB Giáo dục Việt Nam, 2010 B TIẾNG ANH [18], A Alain Ph.D (1999), Managing Software Product Quality Evaluation with ISO Standards Software Engineering Management Research Lab Universite du Quebec Montreal, Canada in Cooperation with GAIA and INFOJED Vietnam [19], L Bass P.Clements, Kazman, Software Architecture in Practice, Addition-Wesley, 1998 [20], J Chikofskv and J.H Cross, Reverse Engineering and Design Recovery: A Taxonomy, vol 7, pp 13-17, January 1990 [21], D Garlan and M Shaw, An instruction to Software Architecture, Advances in Software Engineering and Klowlege Engineering, AddionWesley, 1993 [22], IBM Red Book Team (2004), using Enterprise Service Bus, IBM 350 Pattern: Implementing an SOA [23] Roger S Pressman (2001), A Practitioner’s Approach, McGraw Hill, Fifth Edition [24], Richard Koch (1997), The 80/20 principle: The secret of achieving more with less Nicholas Brealey Publishing, London [25], I Sommerville (2001) Software Engineering 6lh Edition, AddisonWasley [26J F Sorensen (2004) A Comparison of Distributed Object Technologies c INTERNET [271.H ttp s://tailieu /d oc/b ai-t’iana-h e-th on u -d icu -k h ien -p h an -tan -D h an l-1 h tm l : phân tán, Hoàng Minh Sơn (2 0 ), Bài g iả n g Hệ th ốn g điều khiển Đại h ọc Bách khoa Hà Nội [28] Https://www.slideshare.net/ThuyetNguyen 11/kintrchngdchvwebservice-2016: Kiến trúc hướng dịch vụ, Khoa CNTT, ĐHSP KT Hưng Yên r291.Http://doc.edu.vn/tai-lieu/de-tai-kien-truc-huong-dich-vu-va-uni>dunií-service-oriented-architecture-23969/ 2016 TAI LIEU - EBOOK: Kiến trúc hướng dịch vụ ứng dụng (2013) 351 NHÀ XUÁT BẢN ĐẠI HỌC THÁI NGUYÊN Dịa chỉ: Phường Tân Thịnh - thành phố Thái Nguyên - tỉnh Thái Nguyên Điện thoại: 0208.3840.01 X- Fax: 0208.3840.017 Website: nxb.tnu.cdu.vn * Email: nxb.dhtn(5>gmail.com LÊ VĂ N PH ÙNG - N G U Y Ề N V Ă N T Ả O GIÁO TRÌNH CƠNG NGHỆ• PHÀN MÈM NÂNG CAO Chịu trách nhiệm xu ấ t bản: TS PHẠM QC TN Phó Giám đốc - Phụ trách Chịu trách nhiệm nội dung PGS.TS NGUYỄN ĐỨC HẠNH Tồng hiên tập Riên tập: PHẠM VĂN v ũ Thiết kế bìa: LẺ THÀNH NGUN Trình bày: HỒNG ĐÚC NGUN Sứa hàn in: NGUYỄN THỊ THUỲ DƯƠNG Liên kết xuất bàn: Truờng Đại học Công nghệ Thông tin Truyền Thơng - Đại học Thái Ngun Địa chì: Xã Quyết Thằng - thành phố Thái Ngìtyêtì - tinh Thái Nguyên ISBN: 978-604-915-6S2-6 In 300 cuốn, khổ 17 X 24 cm, Xưởng in - Nhà xuất Đại học Thái Nguyên (Địa chỉ: phường Tân Thịnh, thành phố Thái Nguyên) Giấy phcp xuất số: 29342018/CXB1PH/04-105/ĐHTN Quyết dịnh xuất số: 24/QĐ-NXBĐHTN In xong nộp lưu chiều quý I năm 2019 ... vụ Hỗn hợp, số phần mềm gửi đến máy khách Phần hệ Ghép nối máy khách Ghép nối máy khách thống, mềm dẻo cứng máy dịch vụ máy dịch vụ phần mềm phối hợp phối hợp 157 6.1.5 Các thành phần mô hình Client-Server... chương trình ứng dụng thơng thường) Ngày nay, kỹ nghệ hướng đối tượng phân tán hướng thành phần gặp nhiều điểm, ví dụ cơng nghệ COM/DCOM/ActiveX [27 ], Một đối tượng phân tán đối tượng phần mềm hệ... việc tương tác thành phần phần mềm với thành phần khác q trình tính tốn, nhiều trình khác hay máy tính riêng biệt Hãng Microsoft hy vọng ngày không xa COM sử dụng phổ biến phần cứng hệ điều hành

Ngày đăng: 23/03/2023, 23:04