Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

Similar documents
Kích hoạt phương thức xa (RMI- Remote Method Invocation )

Bộ môn MMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

HƯỚNG DẪN CÀI ĐẶT PHẦN MỀM DIỆT VIRUS AVIRA

Lập trình chuyên nâng cao. Lập trình phân tán (Distributed computing

Chương 7. Application Layer. Tài liệu : Forouzan, Data Communication and Networking

HƯỚNG DẪN SỬ DỤNG PLESK PANEL

HƯỚNG DẪN SỬ DỤNG HỆ THỐNG CẬP NHẬT CHỨNG THƯ SỐ HOTLINE:

Tài liệu hướng dẫn: Stored Procedure

Hướng dẫn cài đặt FPT

CẤU TRÚC DỮ LIỆU NÂNG CAO

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

Tình huống 1: PPPoE với Username và Password

Cụ thể những công việc mà AndroidManifest.xml thực hiện: - Đặt tên cho Java package của ứng dụng.

Nội dung chính của chương. Các công nghệ đĩa cứng Cấu tạo vật lý của đĩa cứng Cấu tạo logic của đĩa cứng Cài đặt đĩa cứng như thế nào?

Cài đặt và cấu hình StarWind iscsi trên Windows. iscsi SAN là gì?

Entity Framework (EF)

Internet Protocol. Bởi: Phạm Nguyễn Bảo Nguyên

TÀI LIỆU THỰC HÀNH MÔN CƠ SỞ DỮ LIỆU NÂNG CAO

LÂ P TRI NH WEB ASP.NET

BÀI 1: VBA LÀ GÌ? TẠO MACRO, ỨNG DỤNG CÁC HÀM TỰ TẠO (UDF), CÀI ĐẶT ADD-INS VBA là gì?

Lab01: M V C Lưu ý: Để thực hành, các bạn phải cài Visual Studio 2013 trở lên mới hỗ trợ MVC5.

BELGIUM ONLINE APPOINTMENT

BÀI TẬP THỰC HÀNH LẬP TRÌNH WINDOWS C#

GIẢI THUẬT ĐỊNH TUYẾN (ROUTING ALGORITHM)

B5: Time to coding. Tới thư mục src/example.java và thay đổi nội dung file như sau: Mã: package at.exam;

I. Hướng Dẫn Đăng Nhập:

Giáo trình này được biên dịch theo sách hướng dẫn của Sun Light. Vì là hướng dẫn kỹ thuật, trong này những thuật ngữ kỹ thuật bằng tiếng Anh tôi chỉ

Tạo Project với MPLAB

Đa ngôn ngữ (Internationalization) trong Servlet

Online Appointment System will work better with below conditions/ Hệ thống đặt hẹn online sẽ hoạt động tốt hơn với điều kiện sau đây:

TÀI LIỆU HƯỚNG DẪN SỬ DỤNG HOSTING PLESK PANEL

STACK và QUEUE. Lấy STACK

Chương 6. Transport Layer. Tài liệu : Forouzan, Data Communication and Networking

SIEMENS INDUSTRIAL NETWORKS

BÀI GIẢNG CHƯƠNG 3 GIAO TIẾP KẾT NỐI SỐ LIỆU

Chương 5. Network Layer 19/09/2016 1

Chương 5. Network Layer. Phần 1 - Địa chỉ IPv4. Tài liệu : Forouzan, Data Communication and Networking

Mạng máy tính - Computer Network: Hệ. Giao thức - Protocol:

SIMULATE AND CONTROL ROBOT

HƯỚNG DẪN SỬ DỤNG ĐẦU GHI H.264 DVR VISION VS (4CH - 8CH - 16CH)

Khoa KH & KTMT Bộ môn Kỹ Thuật Máy Tính

PHÁT TRIỂN ỨNG DỤNG WEB

LẬP TRÌNH WINDOWS FORM VỚI CÁC CONTROL NÂNG CAO (Các control trình bày dữ liệu dưới dạng danh sách)

Nhấn nút New để tạo 1 biến mới Trang 17

GV: Phạm Đình Sắc or

HỢP ĐỒNG MUA BÁN HÀNG HÓA QUỐC TẾ GV: NGUYỄN THỊ BÍCH PHƯỢNG

ĐỌC, GHI XML VỚI C# TRONG ADO.NET --- SỬ DỤNG VISUAL STUDIO

KIẾN TRÚC MÁY TÍNH. Giảng viên: ThS. Phan Thanh Toàn. v

CHƯƠNG 2: CÁC ĐẶC ĐIỂM VỀ MÔI TRƯỜNG PHÁT TRIỂN (IDE)

Bài Thực hành Asp.Net - Buổi 1 - Trang: 1

Phần 2. SỬ DỤNG POWERPOINT ĐỂ CHUẨN BỊ NỘI DUNG TRÌNH BÀY

Lecture 12. Trees (1/2) Nội dung bài học:

TỔNG QUAN VỀ.NET VÀ C#

HƯỚNG DẪN CÁCH SỬ DỤNG WINDOWS MOVIE MAKER

Mô hình dữ liệu quan hệ (Relational data model)

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

LINQ TO SQL & ASP.NET

Time Picker trong Android

Môn Học: Cơ Sở Dữ Liệu 2. Chương 3 LẤY DỮ LIỆU TỪ NHIỀU NGUỒN

Bài tập lớn số 1. Giả lập bộ định thời

1 Bước 1: Test thử kit LaunchPad.

Tìm hiểu Group Policy Object và các ví dụ

HƢỚNG DẪN TRIỂN KHAI KASPERSKY - MOBILE DEVICE MANAGEMENT

BÀI 6 LÀM VIỆC VỚI THÀNH PHẦN MỞ RỘNG CỦA CSS3

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

MỤC LỤC. Giáo trình Thiết kế web Trang 1

ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN

Ôn tập Thiết bị mạng và truyền thông DH07TT - Lưu hành nội bộ (không sao chép dưới mọi hình thức)

Nội dung. Thêm về Java 2. Nguyễn Việt Hà

Exceptions. Outline 7/31/2012. Exceptions. Exception handling is an important aspect of objectoriented. Chapter 10 focuses on:

Bài 13: C++11. EE3490: Kỹ thuật lập trình HK1 2017/2018 TS. Đào Trung Kiên ĐH Bách khoa Hà Nội

Khoa Công Nghệ Thông Tin Trường Đại Học Cần Thơ. Những hỗ trợ tiên tiến khác của SQL. Đỗ Thanh Nghị

Phần 1: Hướng dẫn sử dụng PictureBox tạo Slide Show

Kỹ thuật thu nhỏ đối tượng trong Design (Layout)

Tạo repository mới. The working tree. The staging index. Lệnh git init tạo một repository loại git. tại thư mục hiện tại: $ git init

Chủ đề 7: Triển khai và Bảo trì. COMP1026 Introduction to Software Engneering CH7-1 HIENLTH

MA NG MA Y TI NH (Computer Networks)

BÀI THỰC HÀNH SỐ 1. Quản trị tập tin: 1/ Tạo các thư mục sau: Bài tập thực hành linux Linuxlab. bt1 bt11 bt111. bt121. bt12. bh1 bh11 bh111.

BÀI LAB ĐỔI TÊN DOMAIN

PHÁT TRIỂN ỨNG DỤNG DI ĐỘNG NÂNG CAO

dụng một chính sách, điều này giúp dễ dàng quản lý và cung cấp tính năng Load Balancing (cân bằng tải) phục vụ tốt hơn các yêu cầu của tổ chức.

Hướng Dẫn Thực Hành Tập tin & Thư mục

Cập nhật ResultSet trong JDBC

Mô hình thực thi ASP.NET page Xây dựng Web Form HTML Control và Web Control Bổ sung code vào Page Page Event Life Cycle Postback event

LỖI LÚC THỰC THI và QUÁ TRÌNH GOM RÁC

Bài 10: Cấu trúc dữ liệu

LAB IP SLA Bài 1. Bùi Quốc Kỳ ***

HƯỚNG DẪN SỬ DỤNG NHANH MINDJET MIND MANAGER

LẬP TRÌNH 8051 SỐ HỌC VÀ LÔ GIC

Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM LẬP TRÌNH MINICHAT. Bài giảng 3. Trang1. Khoa Khoa Học Và Kỹ Thuật Máy Tính

BẢO MẬT TRONG SQL SERVER

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

Cấu hình Router FTTH ---X---

NHẬP MÔN LẬP TRÌNH KHOA HỌC DỮ LIỆU. Bài 10: Thư viện Pandas (2)

Tính kế thừa-2. Bởi: Thanh Hiền Vũ. Định nghĩa lại các thành viên lớp cơ sở trong một lớp dẫn xuất:

Giao tiếp giữa các tiến trình

BÀI 6a LẬP TRÌNH ĐA TUYẾN (MULTI THREAD)

HƯỚNG DẪN QUẢN TRỊ HỆ THỐNG

Bài thực hành 1: Chỉ mục trong SQL Server

Các kiểu định địa chỉ họ MSC-51

Transcription:

RPC và RMI Khái niệm RPC Khái niệm RMI Các bước cài đặt RMI trong Java Ví dụ về RMI 1

RPC (Remote Procedure Call) Khái niệm RPC: gọi thủ tục ở xa. Trong suốt về mặt ngữ nghĩa: gọi thủ tục ở xa cũng có cú pháp tương tự như gọi thủ tục cục bộ. Định hướng lời gọi đến máy tính đích ở xa thông qua khái niệm Stub. Đơn giản hóa việc xây dựng các ứng dụng Client-Server Server : cung cấp các thủ tục ở xa Client : gọi các thủ tục ở xa trong quá trình tính toán của mình. Mô hình của ứng dụng phân tán (Distributed Application): Thực thi của chương trình được trải rộng ra trên nhiều máy tính khác nhau. 2

RPC (Remote Procedure Call) Kiến trúc chương trình Gọi thủ tục cục bộ Thực thi thủ tục Mở gói kết quả Đóng gói lời mô tả về thủ tục ở xa Mở gói thông điệp yêu cầu Đóng gói kết quả Đảm bảo việc truyền lại, báo nhận, chọn đường, mã hóa 3

Khái niệm Cài đặt RPC bằng ngôn ngữ Java. Cho phép 1 phương thức thực thi từ xa trên nhiều máy ảo khác nhau. Kiến trúc ứng dụng 4

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

Cơ chế vận hành của 1 ứng dụng Client-Server theo kiểu RMI Bước 0: Server tạo ra các đối tượng cho phép gọi từ xa cùng với các Stub và Skeleton của chúng. Bước 1: Server sử dụng lớp Naming để đăng ký tên cho một đối tượng từ xa. Bước 2: Naming đăng ký Stub của đối tượng từ xa với Registry Server. Bước 3: Registry Server sẵn sàng cung cấp tham thảo đến đối tượng từ xa khi có yêu cầu. 6

Cơ chế vận hành của 1 ứng dụng Client-Server theo kiểu RMI Bước 5: Naming tải Stub của đối tượng xa từ dịch vụ tên mà đối tượng xa đã đăng ký về Client Bước 4: Client yêu cầu Naming định vị đối tượng xa qua tên đã được đăng ký (phương thức lookup) với dịch vụ tên Bước 6: Cài đặt đối tượng Stub và trả về tham khảo đối tượng xa cho Client. Bước 7: Client thực thi một lời gọi phương thức từ xa thông qua đối tượng Stub 7

Các lớp của Java hỗ trợ xây dựng ứng dụng RMI Các gói java.rmi và java.rmi.server Các lớp thường dùng là: java.rmi.naming java.rmi.rmisecuritymanager java.rmi.remoteexception java.rmi.server.remoteobject java.rmi.remote java.rmi.server.unicastremoteobject 8

Xây dựng ứng dụng phân tán với RMI 1. Tạo giao diện (interface) khai báo các phương thức được gọi từ xa của đối tượng. 2. Tạo lớp cài đặt (implements) cho giao diện đã được khai báo. 3. Viết chương trình Server. 4. Viết chương trình Client. 5. Dịch các tập tin nguồn theo dạng RMI (rmic) để tạo ra các lớp tương ứng và stub cho Client, skeleton cho Server. 6. Khởi động dịch vụ registry (rmiregistry). 7. Thực hiện chương trình Server. 8. Thực thi chương trình Client. 9

Ví dụ minh họa: Xây dựng ứng dụng phân tán theo dạng RMI: Định nghĩa 1 phương thức String sayhello() cho phép gọi từ xa. Khi kích hoạt phương thức đó: sẽ trả về kết quả là 1 chuỗi "Hello RMI" cho Client gọi nó. 10

Bước 1: Tạo interface khai báo phương thức từ xa Bước 2: Tạo lớp cài đặt cho interface khai báo ở trên 11

Bước 3: Chương trình Server, tạo đối tượng cho phép gọi hàm từ xa. 12

Bước 4: Chương trình Client, tạo đối tượng tham chiếu đến đối tượng từ xa, gọi hàm từ xa trên đối tượng đó. 13

Bước 5: Dịch các tập tin nguồn theo dạng RMI javac HelloItf.java Hello.java HelloServer.java HelloClient.java Kết quả: rmic Hello Kết quả: HelloItf.class, Hello.class, HelloServer.class, HelloClient.class Hello_Skel.class, Hello_Stub.class Bước 6: Khởi động dịch vụ rmiregistry start rmiregistry [port] Cổng mặc định là 1099. Không đóng cửa sổ này lại 14

Bước 7: Thực thi Server java -Djava.security.policy=URL_Of_PolicyFile ServerName URL_Of_PolicyFile: địa chỉ theo dạng URL của tập tin mô tả chính sách về bảo mật mã nguồn của Server (policy file). File có dạng sau (tham khảo thêm về tài liệu Security của Java): grant { }; // Giả sử cho phép mọi người đều được download tập tin trên Server permission java.security.allpermission; Giả sử tập tin policy nằm ở thư mục D:\ViduJava\policy.java 15

Bước 8: Thực thi Client 16