intTypePromotion=1
ADSENSE

Chương 7 Thiết kế phát triển và ứng dụng phân tán

Chia sẻ: Nguyen Le Nhat Nam | Ngày: | Loại File: PPT | Số trang:69

122
lượt xem
25
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Hệ phân tán được thiết kế vào những năm 70 (với một vài hệ thống thử nghiệm đơn giản) Kể từ đó đã có những tiến bộ lớn. - Ví dụ : Theo công trình nghiên cứu của Hollman.D ở “ Internet and Web use in the US” – 1997, trong ước tính 28.8 triệu người ở Mỹ, 16 tuổi trở lên truy cập vào Internet, sử dụng 16,4 triệu Internet, 15,1 triệu sử dụng Web, trong đó có khoảng11.5 triệu đã sử dụng Web để mua hàng các mặt hàng....

Chủ đề:
Lưu

Nội dung Text: Chương 7 Thiết kế phát triển và ứng dụng phân tán

  1. NỘI DUNG  Giới thiệu  Các thành phần cơ bản cho ứng dụng phân tán  Phát triển ứng dụng phân tán với Java RMI  Các ví dụ DUYTAN UNIVERSITY
  2. GIỚI THIỆU • Hệ phân tán được thiết kế vào những năm 70 (với một vài hệ thống thử nghiệm đơn giản) Kể từ đó đã có những tiến bộ lớn. - Ví dụ : Theo công trinh nghiên cứu cua ̀ ̉ Hollman.D ở “ Internet and Web use in the US” – 1997, trong ước tính 28.8 triệu người ở Mỹ, 16 tuổi trở lên truy cập vào Internet, sử dụng 16,4 triệu Internet, 15,1 triệu sử dụng Web, trong đó có khoang11.5 triệu đã sử dụng Web ̉ để mua hàng các mặt hàng. DUYTAN UNIVERSITY
  3. GIỚI THIỆU • Ngày nay, Internet đạt đến hàng triệu người trong gần một trăm quốc gia trên tất cả các châu lục trên thế giới  Ứng dụng thực tế đã chạy trên cả hai hệ thống tập trung và mạng Internet.  ra đơi hệ thống phân tán là không thể ̀ tránh khỏi • Những lợi thế của hệ thống phân tán đã được đưa ra cho mục đích này  phù hợp cho việc phát triển các ứng dụng phân tán. DUYTAN UNIVERSITY
  4. Các yêu cầu đối với các ứng dụng phân tán • Yêu cầu để xây dựng 1 ứng dụng phân tán đòi hỏi nhiều yếu tố khác nhau, và khá phức tạp. Tuy nhiên, về cơ bản để thiết kế và triển khai một ứng dụng phân tán cần lựa chọn : - Mô hình phát triển - Ngôn ngữ lập trình - Cơ sở dữ liệu - Kỹ thuật phát triển - Quản lý bộ nhớ - Quản lý bảo mật v.v... DUYTAN UNIVERSITY
  5. NGÔN NGỮ LẬP TRÌNH PHÂN TÁN • Các ngôn ngữ lập trình cổ điển chẳng hạn như Fortran, Pascal, và C là không thích hợp cho các hệ thống phân tán. Những loại ngôn ngữ này không hỗ trợ tốt cho các vấn đề như : concurrency, truyền thông, đồng bộ hóa, và sự đáng tin cậy v.v... • Hiện có ba vấn đề cơ bản mà phân biệt được chương trình phân tán từ chương trình tuần tự (sequential program) - Sử dụng xử lý nhiều yếu tố phân tán (PES) - Hợp tác giữa các PES - Khả năng chịu lỗi ứng dụng DUYTAN UNIVERSITY
  6. NGÔN NGỮ LẬP TRÌNH PHÂN TÁN  Ngôn ngữ hỗ trợ lập trình phân tán có đặc điểm: - Song song : tiến trinh, đối tượng, tường thuật, mapping ... - Giao tiếp : Thông điệp, chia sẻ dữ liệu, đối tượng... - Chịu lỗi : trong suốt, giao dịch nguyên tố, lỗi NIL ... • Bảng tóm tắt các tính năng của các ngôn ngữ lập trình dưới đây cho ta thấy rõ hơn điều này DUYTAN UNIVERSITY
  7. Các yêu cầu đối với các ứng dụng phân tán • Bảng liệt kê các tính năng trên các ngôn ngữ lập trình phân tán DUYTAN UNIVERSITY
  8. Các yêu cầu đối với các ứng dụng phân tán • Bảng liệt kê các tính năng trên các ngôn ngữ lập trình phân tán DUYTAN UNIVERSITY
  9. MÔ HÌNH THIẾT KẾ Client Server Là mô hình được áp dụng rất • rộng rãi trong các ứng dụng hiện có. • Trên thực tế thì một server có thể được nối tới nhiều server khác nhằm làm việc hiệu quả và nhanh hơn. - Khi nhận được 1 yêu cầu từ client, server này có thể gửi tiếp yêu cầu vừa nhận được cho server khác (ví dụ như database server) DUYTAN UNIVERSITY
  10. Phân theo cụm/đám (Clustering) • Thiết kế và triển khai cluster cần thoả mãn các yêu cầu: -Tính sẵn sàng cao (availability): tài nguyên luôn sẵn sàng trong khả năng cao nhất để cung cấp, giảm thiểu sự ngưng hoạt động hệ thống - Độ tin cậy cao (reliability): giảm thiểu tần số xảy ra các sự cố, và nâng cao khả năng chịu đựng lỗi của hệ thống. - Khả năng mở rộng được (scalability): dễ dàng cho việc nâng cấp, mở rộng trong DUYTAN UNIVERSITY
  11. Phân theo cụm/đám (Clustering) Mô hình triển khai ứng dụng Clustering DUYTAN UNIVERSITY
  12. Phân theo tính toán lưới (Grid Computing) • Đối với các ứng dụng đòi hỏi: xử lý với số lượng dữ liệu lớn, yêu cầu tìm kiếm, sắp xếp, trích lọc, chia sẻ tài nguyên v.v.. trên môi trường phân tán (chẳng hạn Internet chứa hàng tỷ trang Web)  triển khai Grid Computing. • Triển khai ứng dụng Grid khác ứng dụng Web. • Google, Bing, Youtube v.v... sử dụng mô hình này. DUYTAN UNIVERSITY
  13. Điện toán đám mây • Điện toán đám mây (cloud computing): mô hình điện toán có khả năng co giãn (scalable) linh động và các tài nguyên thường được ảo hóa được cung cấp như một dịch vụ trên mạng Internet - Như vây, các nguồn điện toán khổng lồ như phần mềm, dịch vụ ... sẽ nằm tại các máy chủ ảo (đám mây) trên Internet. thay vì trong máy tính gia đình và văn phòng (trên mặt đất) để mọi người kết nối và sử dụng mỗi khi họ cần. DUYTAN UNIVERSITY
  14. Điện toán đám mây • Ra đời từ giữa năm 2007, cho đến nay đã không ngừng phát triển mạnh mẽ và được hiện thực bởi nhiều công ty lớn trên thế giới như IBM, Sun, Amazon, Google, Microsoft, Yahoo, Sales Force, … Mô hinh minh họa về Cloud Computing DUYTAN UNIVERSITY
  15. Cơ sở dữ liệu • Viêc lựa chon CSDL cung như thiêt kế CSDL có 1 ̣ ̣ ̃ ́ ý nghiã quan trong trong : vân hanh, mở rông cung ̣ ̣ ̀ ̣ ̃ như duy tri, phat triên ứng dung và xử lý (xử lý đông ̀ ́ ̉ ̣ ̀ thời, tai tao v.v...) sau nay. ̣́ ̀ • Hiên có 2 mô hinh CSDL được triên khai trong cac ̣ ̀ ̉ ́ ứng dung phân tan ̣ ́ ̣ + CSDL tâp trung ́ + CSDL phân tan Tuy thuôc vao quy mô cua ứng dung, tinh tin cây, ̀ ̣ ̀ ̉ ̣ ́ ̣ săn sang, hiêu quả v.v... mà chung ta có thể lựa chon ̃ ̀ ̣ ́ ̣ ̀ 1 trong 2 mô hinh trên. DUYTAN UNIVERSITY
  16. KỸ THUẬT PHÂN TÁN ĐỐI TƯỢNG Nhóm 1 • Hỗ trợ lập trình thủ tục - RPC, DCE RPC,DCOM Nhóm 2 Hỗ trợ lập trình hướng đối tượng • - CORBA, RMI Nhóm 3 • Hỗ trợ các ứng dụng Web - XML, SOAP, Web Service, AJAX, REST DUYTAN UNIVERSITY
  17. PHÁT TRIỂN UD PHÂN TÁN VỚI JAVA RMI • Lập trình phân tán đối tượng là một trong những vấn đề nóng bỏng của công nghệ phần mềm hiện nay. • Làm thế nào để gọi hàm hay đối tượng ở một máy nào đó và gọi chúng từ một máy khác ? - Như đã trinh bay ở trên, để phat triên cac ứng dung ̀ ̀ ́ ̉ ́ ̣ phân tan có thể sử dung nhiêu kỹ thuât khac nhau : ́ ̣ ̀ ̣ ́ RPC, DCE RPC, DCOM, XML, SOAP, Web Service v.v... Để dễ triên khai cung như năm băt quá trinh thực hiên  ̉ ̃ ́ ́ ̀ ̣ Java RMI. DUYTAN UNIVERSITY
  18. PHÁT TRIỂN UD PHÂN TÁN VỚI JAVA RMI • Kỹ thuật RMI - java.rmi (Tao interfaces, classes, exceptions ở phia Client) ̣ ́ - java.rmi.registry (Dich vụ RMI Naming) ̣ - java.rmi.server (Tao interfaces, classes, exceptions ở phia ̣ ́ Server) - java.rmi.activation (Kích hoạt chức năng theo yêu cầu) - java.rmi.dgc (Phân tan, thu gom, giai phong biên ) ́ ̉ ́ ́ DUYTAN UNIVERSITY
  19. PHÁT TRIỂN UD PHÂN TÁN VỚI JAVARMI Đặc điểm • Ưu điểm - Đơn giản, dễ sử dụng - Trong suốt: lời gọi phương thức từ xa giống lời gọi phương thức cục bộ - Độ tin cậy cao - An toàn và bảo mật (do JVM cung cấp) • Nhược điểm: - Chỉ dùng cho java DUYTAN UNIVERSITY
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2