.4Kiến trúc của Apache ODE

Một phần của tài liệu (LUẬN văn THẠC sĩ) so sánh hiệu năng của các trình xử lý BPEL (Trang 32 - 34)

Bộ biên dịch ODE BPEL

Bộ biên dịch có trách nhiệm chuyển đổi từ mã nguồn BPEL sang thành mã nguồn có thể thực thi đƣợc. Đầu ra của bộ biên dịch có thể là một mã nguồn tốt hoặc một danh sách các thông báo lỗị File biên dịch sinh bởi bộ biên dịch là một mô hình đối tƣợng tƣơng tự với cấu trúc trong file tiến trình BPEL. Tuy nhiên, file biên dịch này thực tế chứa nhiều tên tham chiếu (ví dụ các biến), các liên kết WSDL, các kiểu biến, và các cấu trúc khác nhaụFile biên dịch này thƣờng có đuôi mở rộng là .cbp, là đầu vào không thể thiếu của trình chạy ứng dụng BPEL (BPEL runtime).

Trình chạy ứng dụng

Trình chạy ứng dụng đƣợc thiết kế trong mô đun bpel-tuntime nhằm hỗ trợ việc thực thi của các tiến trình sau khi đã biên dịch. Trình chạy này sẽ thực hiện các thao tác của tiến trình thông qua việc thực thi các cấu trúc của nó. Trong lúc chạy, mô-đun này sẽ tạo thêm đối tƣợng mới nếu cần và gửi thông điệp tới các đối tƣợng. Cuối cùng, trình chạy này sẽ thực thi các hàm API để tƣơng tác với bộ lõi của BPEL.

Để có thể thực hiện đƣợc đầy đủ một tiến trình trong mọi môi trƣờng, trình chạy dựa trên thành phần DAO (các đối tƣợng truy cập dữ liệu) giúp duy trì hoạt động của nó. Việc thực thi của những DAO này có thể đƣợc tùy biến nhƣng nhìn chung đƣợc cung cấp bởi một CSDL quan hệ.Quá trình thực thi các cấu trúc BPEL ở mức đối tƣợng đƣợc thực hiện dựa trên nền tảng kỹ thuật Java Concurrent Object (Jacob). Jacob cung cấp cơ chế thực hiện đồng thời ở mức ứng dụng và cơ chế trong suốt để ngắt và duy trì trạng thái thực thị Jacob là phần quan trọng trong mô hình thực thi đồng thời ACTORS. Jacob còn cung cấp một máy ảo cho việc thực thi các cấu trúc BPEL.

Đối tượng truy cập dữ liệu - DAO

DAO thực hiện tƣơng tác giữa các trình chạy BPEL và kho lƣu trữ dữ liệu phía dƣớị Thông thƣờng, dữ liệu đƣợc lƣu trữ dƣới dạng một CSDL quan hệ. Trong trƣờng hợp này, DAO sẽ thực thi thông qua thƣ viện truy cập dữ liệu OpenJPẠ Trình chạy BPEL yêu cầu DAO các ràng buộc sau:

 Các đối tƣợng đang hoạt động – Theo dõi đối tƣợng nào vừa đƣợc tạọ  Định hƣớng thông điệp – Đối tƣợng nào đang đợi thông điệp nàọ  Các biến – Giá trị của các biến cho mỗi đối tƣợng.

 Liên kết ngoài – giá trị của các liên kết ngoài cho mỗi đối tƣợng.

 Trạng thái thực thi của tiến trình – Chuỗi các trạng thái liên tiếp của máy ảo Javạ

Trình chạy BPEL không tồn tại một mình mà nó có thể thực hiện các tác động với bên ngoàị Các lớp tích hợp đƣợc liên kết với trình chạy để thực hiện nhiệm vụ nàỵ Ví dụ, có những lớp tích hợp riêng cho AXIS2 hay JBỊ Chức năng cơ bản của lớp tích hợp là nhằm cung cấp các kênh giao tiếp cho trình chạỵ Lớp tích hợp AXIS2 sử dụng các thƣ viện của AXIS2 để giao tiếp với trình chạy thông qua giao tiếp Dịch vụ Web. Còn lớp tích hợp JBI sử dụng cơ chế gắn trình chạy vào trục tích hợp JBỊ Bên cạnh việc giao tiếp, lớp tích hợp còn cung cấp cơ chế lập lịch và quản lý vòng đời của trình chạỵ Hai trong số những thách thức khó nhất trong việc thực thi của trình chạy BPEL là duy trì trạng thái thực thi của tiến trình và quản lý thực thi đồng thờị ODE sử dụng nền tảng Jcob để quản lý 2 vấn đề nàỵ Cách tiếp cận của Jcob lấy ý tƣởng từ cách tiếp cận của actor modelprocess elgebra. Thông qua Jacob, ODE duy trì trạng thái của tiến trình nhƣ là một tập các đối tƣợng đƣợc kết nối bằng một kênh truyền thông điệp. Khi một đối tƣợng nhận một thông điệp, nó có thể tạo các kênh và đối tƣợng mới và gửi

thông điệp; thực thi đồng thời đƣợc quản lý bởi vệc sử dụng các thông điệp trong mô hình đơn luồng.

2.3.2 ActiveVOS

Công ty Active Endpoints đƣợc thành lập từ năm 2003, là nhà cung cấp hàng đầu cho các giải pháp BPEL và các sản phẩm SOA khác. Active Endpoints có những sản phẩm BPEL nổi tiếng nhƣ trình thiết kế và trình xử lý ActiveBPEL, đƣợc hàng triệu lập trình viện và các tổ chức sử dụng. Trình thiết kế ActiveBPEL là công cụ để tạo các tiến trình BPEL và xuất ra tiến trình mẫu để chạy trên trình xử lý BPEL. Trình xử lý BPEL của Active Enpoints có thể chạy trên cả những phần mềm mã nguồn mở - Tomcat, hay những phần mềm thƣơng mại nhƣ WebLogic, WebSpherẹ Hình dƣới đây mô tả tổng quan bộ sản phẩm của Active BPEL.

Một phần của tài liệu (LUẬN văn THẠC sĩ) so sánh hiệu năng của các trình xử lý BPEL (Trang 32 - 34)

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

(64 trang)