Tải bản đầy đủ (.pptx) (16 trang)

Báo cáo Java rmi và demo

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (419.17 KB, 16 trang )

JAVA RMI
GVHD:
PSG.TS.HỒ BẢO QUỐC

HV:
LÊ HỒNG DANH – 16C12005
TRỊNH HỮU PHƯƠNG - 1511021


Giới thiệu Java RMI
Thơng thường các chương trình của chúng ta được viết
dưới dạng thủ tục hoặc hàm và việc các hàm gọi lẫn nhau,
truyền tham số hay kết quả cho nhau chỉ xảy ra ở máy cục
bộ.
Java RMI (Remote Method Invocation) – là một kỹ thuật
cho phép người lập trình gọi các phương thức từ xa – là cách
giao tiếp của các đối tượng trong Java ở các máy khác nhau
có thể gọi lẫn nhau.
06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

2


Giới thiệu Java RMI
Để giải quyết một số vấn đề trong việc truyền thông giữa
Client/Server. RMI không gọi trực tiếp mà thông qua lớp
trung gian. Lớp này tồn tại ở cả hai phía Client và Server.
◦ Lớp ở máy Client gọi là Stubs
◦ Lớp ở máy Server gọi là Skeletons.



06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

3


Đặc tính của Java RMI
RMI là mơ hình đối tượng phân tán của Java, nó giúp cho
việc truyền thơng giữa các đối tượng phân tán được dễ dàng
hơn.
RMI là API bậc cao được xây dựng dựa trên lập trình Socket.
RMI không những cho phép chúng ta truyền dữ liệu giữa các
đối tượng trên các hệ thống máy tính khác nhau, mà còn triệu
gọi các phương thức trong các đối tượng ở xa (Remote Object).

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

4


Đặc tính của Java RMI
Việc truyền dữ liệu giữa các máy khác nhau được xử lý
một cách trong suốt bởi máy ảo Java (Java virtual machine).
Tương tự như mơ hình Client/Server, RMI vẫn duy trì khái
niệm của Client và Server, tuy nhiên cách tiếp cận của RMI
linh hoạt hơn, mềm dẻo hơn so với mơ hình Client/Server.

RMI cung cấp cơ chế callbacks, nó cho phép Server triệu
gọi các phương thức ở Client.

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

5


Kiến trúc cơ bản của Java RMI

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

6


Kiến trúc cơ bản của Java RMI
Remote interface: được kế thừa từ java.rmi.remote. Nó
khai báo tất cả các phương thức mà Client có thể triệu gọi.
Tất cả các phương thức trong interface này nên có phần xử lý
ngoại lệ (throw RemoteException)
Remote implementation: Được thực thi từ Remote
interface và mở rộng từ UnicastRemoteObject. Triển khai các
phương thức được khai báo trong Interface tại đây. Nó là một
Remote Object thực sự. Phát sinh hai lớp trung gian Stub và
Skeletons.
06/11/2023


LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

7


Kiến trúc cơ bản của Java RMI
Server class bao gồm:
◦ RMI registry: Bộ đăng kí này sẽ đăng kí một Remote
object với Naming Registry. Giúp các Remote object được
chấp nhận khi gọi các phương thức từ xa.
◦ Các class thực thi trên server.
Client class: Truy vấn trên tên Remote object trên RMI
registry, thông qua stub để gọi các phương thức trên server.

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

8


Kiến trúc cơ bản của Java RMI

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

9



Kiến trúc cơ bản của Java RMI
Stub là một đối tượng hoạt động như là một cổng ở phía client.
Tất cả các yêu cầu gửi đi được chuyển qua nó. Khi gọi phương
thức trên đối tượng Stub, nó thực hiện các tác vụ sau:
1. Khởi tạo kết nối với máy ảo từ xa
2. Viết và truyền tham số cho máy ảo từ xa
3. Đợi kết quả
4. Đọc giá trị trả về hoặc ngoại lệ
5. Cuối cùng trả về giá trị cho nơi gọi
06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

10


Kiến trúc cơ bản của Java RMI
Skeleton là một đối tượng hoạt động như là một cổng ở
phía server. Tất cả các yêu cầu đến được chuyển qua nó. Khi
skeleton nhận được yêu cầu đến, nó sẽ thực hiện các nhiệm
vụ sau:
1. Đọc các tham số cho phương thức từ xa
2. Gọi phương thức trên đối tượng từ xa thực tế
3. Viết và truyền kết quả cho nơi gọi.

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG


11


Con đường kích hoạt phương thức ở xa

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

12


Cơ chế vận hành

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

13


Cơ chế vận hành

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

14



Ví dụ
Xây dựng một phương thức int add(int a, int b) cho phép
gọi từ xa.
 Kích hoạt phương thức đó: sẽ trả về kết quả là giá trị của
phép cộng cho Client gọi nó.

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

15


Cảm ơn Thầy và các bạn lắng nghe!

06/11/2023

LÊ HỒNG DANH - TRỊNH HỮU PHƯƠNG

16



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×