3. Hướng nghiên cứu của đề tài
2.4. Đánh giá hiệu năng của các trình xử lý
Hiệu năng của một hệ thống được đánh giá bằng khả năng mà hệ thống đó xử lý các yêu cầu và trả về kết quả cho người dùng. Một hệ thống có hiệu năng được đánh giá là tốt nếu như yêu cầu của người dùng được xử lý và trả về đúng kết quả, với thời gian chấp nhận được, đồng thời có khả năng xử lý cùng lúc nhiều yêu cầu như vậy. Ngược lại, một hệ thống xử lý yêu cầu quá chậm hoặc có hiện tượng nghẽn, treo khi phục vụ nhiều yêu cầu đồng thời sẽ được đánh giá là không tốt [2].
Để đánh giá một hiệu năng của một hệ thống là tốt hay không, người ta thường sử dụng các phép đo hiệu năng, trong đó mô phỏng quá trình xử lý yêu cầu của hệ thống, thu thập các dữ liệu đo dựa trên một số tiêu chí và cuối cùng tiến hành phân tích, đánh giá các dữ liệu đo. Để mô phỏng quá trình xử lý yêu cầu, người ta sẽ giả lập các yêu cầu giống với môi trường thật và gửi tới hệ thống. Theo lý thuyết đo về hiệu năng phần mềm của Henry H.Liu, người ta sử dụng phương pháp đo dựa trên 2 tiêu chí là throughput và responsetime để đánh giá hiệu năng các hệ thống. Throughput được định nghĩa là số lượng các đối tượng (objects) được xử lý trong một giây (Throughput=objects/second), còn response time là thời gian phản hồi từ hệ thống, tính từ sau khi người dùng gửi đi một yêu cầu đến khi nhận được kết quả trả về. Trong các hệ thống xử lý giao dịch trực tuyến (OLTP), response timelà tiêu chí quan trọng để đánh giá hiệu năng của hệ thống, còn throughput thường được sử dụng với các hệ thống xử lý giao dịch dài và lớn (ví dụ các hệ thống chạy batch job).
Để đo hiệu năng của một trình xử lý BPEL, chúng ta cũng sử dụng phương pháp trên để đo các tiêu chí dựa trên các yêu cầu gửi đến hệ thống. Tuy nhiên, bản thân trình xử lý BPEL không trực tiếp đón nhận yêu cầu từ phía người dùng cũng như trả về kết quả. Việc đón nhận yêu cầu và trả kết quả được thực hiệnbởi ứng
dụng dịch vụ Web chạy trên trình xử lý BPEL, mặc dù trình xử lý này trực tiếp thực hiện các tác vụ của ứng dụng dịch vụ Web. Như vậy để đo hiệu năng của một trình xử lý BPEL, chúng ta sẽ thực hiện các phép đo tác động đến ứng dụng dịch vụWeb chạy trên trình xử lý đó.
Hình 2.34: Mô hình đo hiệu năng trình xử lý BPEL
Trong mô hình 2.34 trên, người dùng ảo sẽ mô phỏng gửi các yêu cầu đến dịch vụ Web (Web Service), dịch vụ Web sẽ nhận yêu cầu và thực hiện các nghiệp vụ, các thao tác trực tiếp sẽ được gửi xuống trình xử lý BPEL để thực hiện, sau đó trả về kết quả cho dịch vụ Web. Dịch vụ Web sẽ tạo ra kết quả cuối cùng và trả về kết quả cho người dùng ảo. Người dùng ảo được tạo ra bởi các công cụ đo, được phép tùy biến tạo ra số lượng người dùng ảo cũng như tạo sẵn các phép thử (test case). Công cụ đo này giúp tự động hóa việc đo đạc, đồng thời cho kết quả chính xác, khách quan.