Thông tin tài liệu:
Middleware là phần mềm máy tính với nhiệm vụ kết nối các thành phần phần mềm hoặc các ứng dụng với nhau. Phần mềm loại này bao gồm một tập các dịch vụ cho phép sự tương tác giữa các tiến trình chạy trên một hoặc nhiều máy khác nhau. Công nghệ middleware đã được phát triển để cung cấp khả năng hoạt động tương hỗ, phục vụ cho các kiến trúc phân tán thường được để hỗ trợ và đơn giản hóa các ứng dụng phân tán phức tạp.
Nội dung trích xuất từ tài liệu:
Bài giảng Middleware Middleware Tham khảo : Dr Simon Blake Middleware • Middleware che dấu/ cung cấp cái gì – Cung cấp sự trong suốt về vị trí: • Một lập trình viên có thể gọi một method mà không cần biết method đó thực sự đang tồn tại ở đâu (cùng máy, khác máy) – Che dấu nghi thức truyền thông bên dưới • UDP hay TCP – Che dấu chi `ết về quá trình marshall tự động – Độc lập với OS – CORBA cho phép các ngôn ngữ lập trình khác nhau có thể “nói chuyện) với nhau • Sử dụng interface defini`on language (IDL) Interfaces • interface là gì ? – Không phải là GUI – Interface là các phương `ện kết nối hai hệ thống khác nhau Interfaces public int sumNumbers(int a, int b){ Phương thức cộng hai số nguyên return a+b; } private void myCalc(){ System.out.println(sumNumbers(10,10)); Phương thức tham chiếu đến và System.out.println(sumNumbers(5,7)); gọi phương thức ở trên. } Interfaces • Interfaces – Gọi method mà không cần biết code của nó được viết thế nào – Chỉ cần interface không đổi thì vẫn có thể gọi như cũ Chúng ta thay đổi cài đặt của thuật toán cộng hai Tuy vậy, không thay đổi ở cách gọi phương thức số nguyên cũ private void myCalc(){ public int sumNumbers(int a, int b){ System.out.println(sumNumbers(10,10)); int result = a+b; System.out.println(sumNumbers(5,7)); return result; } } Interfaces • Interfaces trong hệ thống thông `n phân tán – Không truyền tham chiếu – Các đối số hoặc là đối số Input hoặc Output • Input đối số chứa các giá trị sẽ được server sử dụng • Output đối số được dùng để server trả giá trị cho client – Việc truy xuẩ trực `ếp là không được phép • Mọi trao đổi thông qua thông điệp (messages) Interfaces • Interfaces trong HTTT phân tán – IDL: Interface Defini`on Language • Cung cấp một sự thỏa thuận để mô tả interfaces giữa các methods • Bao gồm việc phân biệt giữa tham số Input và Output Interfaces • Một ví dụ về CORBA IDL struct Person { Contains marshalling informaSon string name; string place; long year; }; Interface PersonList{ readonly aŒribute string listname; void addPerson(in Person p); void getPerson(in string name, out Person p); long number(); }; Interfaces • An example CORBA IDL struct Person { string name; string place; long year; }; Interface PersonList{ readonly aŒribute string listname; void addPerson(in Person p); And also remote method void getPerson(in string name, out Person p); interfaces long number(); }; ...