Nghiên cứu kiến trúc hướng dịch vụ và đối tượng - 7 pdf

27 333 0
Nghiên cứu kiến trúc hướng dịch vụ và đối tượng - 7 pdf

Đ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

Trang 142 thái hay khác gán DEAD_PATH Hành động xóa chúng khỏi hàng đợi Các trình xử lý kiện tự động xoá đối tượng lắng nghe khỏi hàng đợi scope mà chứa chúng hoàn thành 7.3.1.3 Các xử lý Bao gồm xử lý (receive, reply, invoke, assign, throw, wait, empty); xử lý có cấu trúc (sequence, switch, while, pick, flow); số xử lý đặc biệt khác (scope, compensate, terminate) Trạng thái Mỗi xử lý có trạng thái Có trạng thái sau: • INACTIVE: trạng thái xử lý tiến trình bắt đầu • READY_TO_EXECUTE: xử lý đưa vào hàng đợi đủ điều kiện thực thi • EXECUTING: thực thi • FINISHED: hồn thành khơng có lỗi • FAULTED: hồn thành có lỗi • DEAD_PATH: khơng đưa vào “kế hoạch thực thi” (execution path) Khi xử lý có trạng thái DEAD_PATH tất xử lý có trạng thái giống • QUEUED_BY_PARENT: đợi để thực thi • TERMINATE: bị kết thúc • UNKNOWN:trạng thái xử lý khơng xác định Nếu xử lý có trạng thái UNKNOWN tất xử lý có trạng thái INACTIVE Trang 143 Sơ đồ phân cấp xử lý Hình 7-8 – Sơ đồ phân cấp xử lý 7.3.1.3.1 Các phương thức hay sử dụng • isReadyToExecute(): ► Trả “true” xử lý thỏa điều kiện để thực thi thông qua việc kiểm tra link đầu vào xử lý • execute() ► Đây phương thức thực thi xử lý • objectCompleted() ► Được gọi xử lý chúng thực thi xong Phương thức xử lý link đầu (hay gọi source link) thơng báo cho tiến trình biết hồn thành • terminate(): ► Được gọi tiến trình có lỗi xảy q trình xử lý tiến trình cần phải kết thúc Trang 144 7.3.1.4 Các loại tập tin • bpel: tập tin định nghĩa tiến trình • pdd: tập tin mô tả thông tin liên quan đến trình triển khai tiến trình, bao gồm thông tin partner link tập tin WSDL cần thiết • wsdlCatalog.xml:cung cấp chế để quản lý tồn tập tin WSDL có liên quan tiến trình 7.3.2 Các bước triển khai business process BpelEngine • Khởi động engine • Tạo thư mục có tên tên tiến trình có phần mở rộng bpel Bên thư mục có chứa tập tin mơ tả thơng tin triển khai tiến trình (.pdd) thư mục có cấu trúc sau: ► Bpel: thư mục chứa tập tin định nghĩa tiến trình (.bpel) ► Wsdl: chứa tất tập tin wsdl cần dùng tiến trình ► Partners: chứa tập tin định nghĩa partner (option) ► META-INF: chứa file wsdlCatalog.xml • Chép tịan thư mục vào thư mục deploy engine Engine tự động triển khai tiến trình Sử dụng tiến trình web service bình thường Trang 145 Chương THÀNH PHẦN BPEL DESIGNER CỦA SOA SUITE Chương giới thiệu thành phần thứ ba SOASuite, công cụ “BpelDesigner” cung cấp môi trường trực quan hỗ trợ người dùng xây dựng, thiết kế tiến trình nghiệp vụ 8.1 Giới thiệu BPEL Designer thành phần SOA SUITE BPEL Designer giúp cho người sử dụng định nghĩa tiến trình (process) theo chuẩn BPEL cách dễ dàng, trực quan nhanh chóng Designer cung cấp cho người sử dụng môi trường phát triển tích hợp IDE hoạt động online offline 8.2 Chức 8.2.1 Tạo mới, chỉnh sửa, thiết kế tiến trình Người dùng tạo tiến trình, mở tiến trình có lên để chỉnh sửa lưu lại BPEL Designer hỗ trợ ngôn ngữ BPEL, cho phép người sử dụng thiết kế dạng kéo thả trực quan Ngoài ra, người sử dụng vừa chỉnh sửa mã nguồn vừa chỉnh sửa mơ hình, chỉnh sửa hai góc nhìn (dạng text, dạng trực quan), BPEL Designer tự động cập nhật nội dung tiến trình Để hỗ trợ thêm cho trình thiết kế BPEL Designer cung cấp cho người sử dụng thành phần UDDI service browser dùng để tìm kiếm dịch vụ UDDI 8.2.2 Chức kết xuất tiến trình file ảnh Khi có thiết kế vừa ý, người sử dụng triển kết xuất hình ảnh trực quan tiến trình định dạng file ảnh bmp Chức giúp tạo thuật lợi cho việc in ấn mơ tả tiến trình nghiệp vụ Trang 146 8.2.3 Chức triển khai tiến trình lên server Sau có thiết kế vừa ý, người sử dụng triển khai tiến trình trực tiếp lên server đơn giản dùng chức triển khai BPEL Designer Với chức triển khai tự động BPEL Designer, người sử dụng việc quan tâm đến thiết kế tiến trình, việc triển khai tiến trình thao tác bấm chọn đơn giản Ngồi ra, người dùng xem nội dung log file từ BPEL Designer để xem tiến trình có triển khai thành cơng hay khơng, có bị lỗi thiết kế khơng 8.3 Thiết kế cài đặt 8.3.1 Cấu trúc chương trình Thành phần BPEL designer có lõi dựa kiến trúc SharpDevelop thêm vào plug-in hỗ trợ BPEL Các plug-in viết theo chuẩn kết hợp với cho chúng hoạt động cách hiệu • Plug-in BPELBackendBinding : plug-in chịu trách nhiệm phân tích nội dung cấu trúc BPEL thành đối tượng, plug-in chịu trách nhiệm xử lý quản lý project BPEL • Plug-in BPELDisplayBinding : plug-in hỗ trợ giao diện kéo-thả trực quan, cho phép chỉnh sửa trực tiếp mơ hình Đây plug-in cung cấp form thao tác, quản lý, chỉnh sửa, cập nhật thiết kế tiến trình BPEL • Plug-in BPELScout : plug-in dùng để tạo quan sát theo dõi thông tin đối tượng bên tiến trình hành • Plug-in BPELToolPad: plug-in dùng cung cấp xử lý thành phần BPEL, cho phép kéo đối tượng xử lý vào hình thiết kế Plug-in xây dựng theo kỹ thuật plug-in động, tiện lợi cho việc thêm bớt ,chỉnh sửa xử lý sau Trang 147 8.3.2 Giao diện chương trình 8.3.2.1 Màn hình Trang 148 8.3.2.2 Màn hình chọn tạo project 8.3.2.3 Cửa sổ project Đây cửa sổ thao tác cho phép quản lý file project BPEL hành Có thể truy cập đến cửa sổ qua phím tắt Ctrl-Alt-L Trang 149 8.3.2.4 Cửa sổ process Cửa sổ thao tác cho phép xem, theo dõi đối tượng BPEL project BPEL hành, cịn biểu diễn cấu trúc phân cấp lồng xử lý Cửa sổ tự động có đối tượng thay đổi Có thể truy cập đến cửa sổ qua phím tắt Ctrl-Alt-B 8.3.2.5 Cửa sổ chọn xử lý Đây cửa sổ danh sách xử lý hỗ trợ Cửa sổ cho phép kéo nút trực tiếp qua hình thiết kế Các xử lý phân loại theo tab trường hợp có nhiều phiên khác có nhiều xử lý thuộc nhóm khác Có thể truy cập đến cửa sổ qua phím tắt Ctrl-Alt-T Trang 150 8.3.2.6 Cửa sổ duyệt file Cửa sổ dùng để duyệt file máy Nhấn double-click vao file để xem nội dung file (nếu định dạng file hỗ trợ) Có thể truy cập đến cửa sổ qua phím tắt Ctrl-Alt-F 8.3.2.7 Vùng nhìn thiết kế process dạng kéo thả trực quan Ta làm việc vùng nhìn Có hai tab tượng trưng cho hai vùng nhìn khác nhau: thiết kế trực quan-soạn thảo text Tab “Design” thi người Trang 151 dùng chọn file BPEL Với vùng nhìn thiết kế trực quan người dùng chọn, kéo thả, xố, chỉnh sửa, phóng to, thu nhỏ đối tượng Người dùng thoải mái chỉnh sửa hai vùng nhìn, chuyển qua vùng nhìn cịn lại thơng tin tự động cập nhật 8.3.2.8 Cửa sổ chọn wsdl Cửa sổ dùng để chọn dịch vụ mạng, trước tiên nhập địa dịch vụ vào address, nhấn nút “Go” để tự động dị tìm dịch vụ, tìm thấy dịch vụ danh sách dịch vụ có địa vừa nhập phần danh mục dịch vụ bên phải Trước hoàn tất thao tác ta cần nhập tên đại diện ngắn gọn cho file wsdl textbox “Alias name” Trang 154 8.3.2.11 Màn hình quản lý property Màn hình dùng để quản lý, cung cấp property cho chức correlation set 8.3.2.12 Màn hình thêm mới/chỉnh sửa property Màn hình dùng thêm mới, chỉnh sửa property Cây danh mục tự động liệt kê tất kiểu message file wsdl tương ứng import vào project Trường query biểu thức XPath dùng để chọn điều kiện biểu thức thích hợp Trang 155 8.3.2.13 Màn hình quản lý correlation set Màn hình dùng để quản lý correlation set 8.3.2.14 Màn hình thiết kế correlation set Màn hình dùng để thiết kế, chỉnh sửa correlation set Một correlationset có nhiều property, ta thêm xoá nút Add/Remove Trang 156 8.3.2.15 Màn hình chọn property để thêm vào correlation set 8.3.2.16 Màn hình chỉnh sửa thơng tin process Trang 157 Màn hình dùng để chỉnh sửa thơng tin tiến trình Mục Suppress Join Failure dùng để báo không xử lý có lỗi phát sinh Mục Abstract Project mang ý nghĩa tiến trình có thực thi (tạo thể hiện) có yêu cầu đến hay khơng 8.3.2.17 Màn hình quản lý biến variable 8.3.2.18 Màn hình thêm mới/chỉnh sửa biến Màn hình dùng để thêm mới/chỉnh sửa thơng tin biến variable Một variable tên gọi thuộc dạng Simple Type , Message Type Element Type Nhấn vào nút bên cạnh để mở cửa sổ chọn kiểu cho variable Trang 158 8.3.2.19 Màn hình chọn kiểu chọn biến 8.3.2.20 Màn hình chỉnh sửa thơng tin xử lý assign Trang 159 8.3.2.21 Màn hình quản lý thành phần gán biến xử lý assign Màn hình dùng để quản lý thành phần copy assign 8.3.2.22 Màn hình thêm mới/chỉnh sửa thành phần gán biến xử lý assign Màn hình dùng chọn hình thức copy từ biến sang biến Trang 160 8.3.2.23 Màn hình chỉnh sửa thơng tin xử lý invoke 8.3.2.24 Màn hình chỉnh sửa thông tin xử lý receive Trang 161 8.3.2.25 Màn hình quản lý correlation set xử lý receive Màn hình dùng để quản lý correlation set xử lý receive Các correlation set tượng trưng cho định danh tiến trình, để có yêu cầu gửi đến BPEL server chuyển đến thể tiến trình mà client cần trao đổi thơng tin 8.3.2.26 Màn hình chọn thêm correlation set cho xử lý receive Trang 162 8.3.2.27 Màn hình chỉnh sửa thông tin xử lý reply 8.3.2.28 Cửa sổ thiết kế điều kiện cho nhánh điều kiện xử lý switch Điều kiện bên nhánh phải biểu thức XPath với namespace bpws Ví dụ bpws:getAttribute(“a”) > 100 Trang 163 8.3.2.29 Màn hình chỉnh sửa thơng tin xử lý while Màn hình dùng để chỉnh sửa thông tin xử lý while, biểu thức bên condition biểu thức luận lý (có thể kết hợp sử dụng biểu thức XPath) 8.3.2.30 Màn hình chỉnh sửa thơng tin nhánh OnMessage xử lý pick Trang 164 8.3.2.31 Màn hình chỉnh sửa thơng tin nhánh OnAlarm xử lý pick Màn hình dùng để chỉnh sửa thông tin nhánh onAlarm xử lý pick Điều kiện kích hoạt nhánh onAlarm thuộc dạng sau: kích hoạt sau khoảng thời gian (ví dụ sau 20 phút 10 giây chạy), kích hoạt dựa biểu thức XPath, kích hoạt đến thời điểm (ví dụ thứ Hai, ngày 11, tháng , năm 2005) , cuối kích hoạt biểu thức XPath thoả 8.4 Hướng dẫn sử dụng 8.4.1 Thiết kế tiến trình Thiết kế tiến trình bên BPEL Designer tưong đối đơn giản Một tiến trình cần trải qua bước import service bên vào, thiết kế partner link, thiết kế luồng xử lý thu thập kết trả Trang 165 Ta thiết kế process BPEL ví dụ mẫu có partner: partner cho người sử dụng hai Web Service sử dụng tiến trình Đây tiến trình ví dụ dịch vụ cho vay mạng mô tả đặc tả ngơn ngữ BPEL 1.1 Hình sau minh họa quy trình xử lý tiến trình Và mơ tả dạng mã giả String processLoanRequest(message) { if (message.amount < 1000 & “low”.equals(assessor.risk(message)) return “approved”; else return approver.approve(message); } Trang 166 Với assessor.risk approver.approve phương thức triệu gọi từ Web Service bên Ta bắt đầu với tiến trình xử lý thành phần, sau liên kết xử lý lại với mối liên kết Cuối ta điền tất thông tin chi tiết cần thiết cho tiến trình BPEL để trao đổi với bên Ta bắt đầu tạo project BPEL với menu File/New/Project chọn loại project BPEL, tên project loanApproval, chọn đường dẫn thư mục chứa project Designer tạo project theo dạng BPEL sau Tiến trình mặc định chứa xử lý cấp cao nên muốn có nhiều xử lý hoạt động bên tiến trình ta phải thêm xử lý cấu trúc có khả xử lý nhiều xử lý bên (flow, sequence, switch, …) Thông thường ta chọn dùng xử lý flow phần tử tiến trình Có hai cách để thêm xử lý vào tiến trình, dùng chức kéo thả designer chỉnh sửa trực tiếp hình soạn thảo code, tự động designer cập nhật nội dung vùng nhìn cịn lại Bây ta ta cần sử dụng chức Web Service bên nên phải import chúng vào hệ thống Để import ta chọn chức project/WSDL chọn đến địa Web Service tương ứng, cần phải nhập tên đại diện cho Web Service Trang 167 Sau import xong ta cần thiết kế partner link partner link type đế xử lý trao đổi liên lạc với Trước tiên phải tạo partner link type tương ứng với Web Service vừa import cách sử dụng chức menu Project/Partner Link Type Dựa partner link type vừa tạo ta thiết kế Partner Link tương ứng cho xử lý tiến trình cách sử dụng chức menu Project/Partner Link Trước thiết kế phần sau, ta cần định nghĩa số biến (variable) Ở tiến trình cần ba biến: cho thông điệp nhận từ client, cho risk assessment message cho thông điệp trả

Ngày đăng: 30/07/2014, 20:20

Từ khóa liên quan

Mục lục

  • TỔNG QUAN

    • Thực trạng hiện tại

    • Phân tích, đánh giá một số mô hình kiến trúc phân tán hiện t

    • Các vấn đề phát sinh, nguyên nhân và biện pháp khắc phục

      • Chính vì vậy các doanh nghiệp cần một cách tiếp cận mới để g

      • GIỚI THIỆU VỀ KIẾN TRÚC HƯỚNG DỊCH VỤ (SERVICE-ORIENTED AR

        • Kiến trúc hướng dịch vụ là gì ?

        • Bốn nguyên tắc chính của hệ thống SOA

          • Sự phân định ranh giới rạch ròi giữa các dịch vụ

          • Các dịch vụ tự hoạt động

          • Các dịch vụ chia sẻ lược đồ

          • Tính tương thích của dịch vụ dựa trên chính sách

          • Các tính chất của một hệ thống SOA

            • Loose coupling

            • Sử dụng lại dịch vụ

            • Sử dụng dịch vụ bất đồng bộ

            • Quản lý các chính sách

            • Coarse granularity

            • Khả năng cộng tác

            • Tự động dò tìm và ràng buộc động

            • Tự hồi phục

            • Lợi ích của SOA

            • Một số mô hình triển khai SOA

            • Kiến trúc phân tầng chi tiết của SOA

              • Tầng kết nối

              • Tầng orchestration

Tài liệu cùng người dùng

Tài liệu liên quan