Báo cáo Hệ Phân Tán Middleware

15 1.3K 6
Báo cáo Hệ Phân Tán  Middleware

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Báo cáo tiểu luận môn Hệ Phân Tán, công nghệ thông tin đại học bách khoa hà nội, thầy Nguyễn Tuấn Dụng, tìm hiểu về Middleware, RPC. NOS DOS Phần mềm trong Hệ phân tán. Trong hệ phân tán thì phần cứng là vô cùng quan trọng, nhưng chính phần mềm mới là thứ đóng vai trò quyết định một hệ thống sẽ như thế nào. Các hệ thống phân tán bản chất rất giống với hệ điều hàng truyền thống. Trước tiên, chúng đều hoạt động giống như một thành phần quản lý tài nguyên cho các phần cứng ở tầng dưới, cho phép nhiều người sử dụng và nhiều ứng dụng có thể chia sẻ tài nguyên : CPU, bộ nhớ, mạng, các thiết bị ngoại vi và dữ liệu thuộc tất cả các loại khác. Thứ hai, quan trọng hơn đó là hệ thống phân tán tạo ra nhằm tre dấu đi sự phức tạp và tính không đồng nhất của các thành phần phần cứng bằng việc cung cấp các máy ảo khiến bất kì ứng dụng nào cũng có thể được khởi chạy trên đó. Hệ điều hành cho một hệ thống máy tính phân tán có thể được chia thành hai loại : hệ thống liên kết chặt và hệ thống liên kết lỏng. Trong hệ thống liên kết chặt thì hệ điều hành cố gắng cung cấp và duy trì một góc nhìn đơn, toàn thể cho các tài nguyên mà nó quản lý. Trong khi đó, hệ thống loại liên kết lỏng có thể được nghĩ như một tập các máy tính, mỗi máy tính chạy một hệ điều hành của riêng nó. Tuy nhiên những hệ điều hành này làm việc với nhau, liên kết liên hệ với nhau tạo ra những dịch vụ chung và những tài nguyên có sẵn cho các máy tính khác sử dụng. Một hệ điều hành liên kết chặt thông thường được biết đến và gọi tên là DOS (hệ điều hành phân tán), được sử dụng để quản lý đa vi xử lý và các đa máy tính thuần nhất. Giống như một hệ điều hành đơn vi xử lý truyền thống, mục tiêu cơ bản của một hệ điều hành phân tán là tre dấu đi tính phức tạp của việc phải quản lý các phần cứng nền tảng ví dụ như chúng có thể chia sẻ bởi nhiều tiến trình. Một loại liên kết lỏng khác tên là NOS ( network operating system ) hệ điều hành mạng được sử dụng cho các hệ thóng đa máy tính phi thuần nhất. Mặc dù việc quản lý nền tảng phần cứng là một vấn đề quan trọng trong NOS, sự khác biệt đến từ việc đối với hệ điều hành truyền thống thì các dịch vụ địa phương được thiết kế để sẵn sàng điều khiển các clients từ xa.

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐÀO TẠO QUỐC TẾ ───────***─────── BÁO CÁO MÔN: PHẦN MỀM PHÂN TÁN Đề tài : “Tìm hiểu Middleware” Sinh viên thực : Chu Ngọc Minh (NT) Trần Đăng Phong Hoàng Tuấn Anh Lớp : SIE – LTU11A Giáo viên hướng dẫn : TS Cao Tuấn Dũng Hà Nội, tháng 10 năm 2016 Mục lục Phần mềm Hệ phần tán 1.1 Hệ điều hành phân tán 1.2 Hệ điều hành mạng Middleware 2.1 Tại lại có xuất Middleware .5 2.2 Vị trí Middleware hệ phân tán 2.3 Middleware Tính mở 2.4 Phân loại Middleware .7 2.4.1 Lời gọi thủ tục Thông điệp bất đồng 2.4.2 Ngôn ngữ riêng biệt Độc lập ngôn ngữ .8 2.4.3 Độc quyền Tiêu chuẩn 2.4.4 Thiết bị nhúng Hệ thống doanh nghiệp 2.5 Mô hình Middleware 2.6 Dịch vụ Middleware 10 2.7 Thử thách cho Middleware .11 Bài tập 12 Phần mềm Hệ phân tán Trong hệ phân tán phần cứng vô quan trọng, phần mềm thứ đóng vai trò định hệ thống Các hệ thống phân tán chất giống với hệ điều hàng truyền thống Trước tiên, chúng hoạt động giống thành phần quản lý tài nguyên cho phần cứng tầng dưới, cho phép nhiều người sử dụng nhiều ứng dụng chia sẻ tài nguyên : CPU, nhớ, mạng, thiết bị ngoại vi liệu thuộc tất loại khác Thứ hai, quan trọng hệ thống phân tán tạo nhằm tre dấu phức tạp tính không đồng thành phần phần cứng việc cung cấp máy ảo khiến ứng dụng khởi chạy Hệ điều hành cho hệ thống máy tính phân tán chia thành hai loại : hệ thống liên kết chặt hệ thống liên kết lỏng Trong hệ thống liên kết chặt hệ điều hành cố gắng cung cấp trì góc nhìn đơn, toàn thể cho tài nguyên mà quản lý Trong đó, hệ thống loại liên kết lỏng nghĩ tập máy tính, máy tính chạy hệ điều hành riêng Tuy nhiên hệ điều hành làm việc với nhau, liên kết liên hệ với tạo dịch vụ chung tài nguyên có sẵn cho máy tính khác sử dụng Một hệ điều hành liên kết chặt thông thường biết đến gọi tên DOS (hệ điều hành phân tán), sử dụng để quản lý đa vi xử lý đa máy tính Giống hệ điều hành đơn vi xử lý truyền thống, mục tiêu hệ điều hành phân tán tre dấu tính phức tạp việc phải quản lý phần cứng tảng ví dụ chúng chia sẻ nhiều tiến trình Một loại liên kết lỏng khác tên NOS ( network operating system ) hệ điều hành mạng sử dụng cho hệ thóng đa máy tính phi Mặc dù việc quản lý tảng phần cứng vấn đề quan trọng NOS, khác biệt đến từ việc hệ điều hành truyền thống dịch vụ địa phương thiết kế để sẵn sàng điều khiển clients từ xa 1.1 Hệ điều hành phân tán (Distributed Operating System) Có hai loại hệ điều hành phân tán : hệ điều hành đa vi xử lý quản lý tài nguyên đa vi xử lý, hệ điều hành đa máy tính phát triển cho đa mát tính Chức hệ điều hành phân tán cần thiết giống hệ điều hành đơn vi xử lý truyền thống, ngoại trừ việc chúng quản lý nhiều nhân CPU 1.2 Hệ điều hành mạng (Network Operating System) Ngược lại với hệ điều hành phân tán, hệ điều hành mạng không đặt giả định tảng phần cứng phải quản lý giống hệ thống đơn Thay vào đó, chúng xây dựng từ tập (collection) hệ thống đơn vi xử lý, máy tính có hệ điều hành riêng Các máy tính khác phần cứng hệ điều hành, chúng kết nối với thông qua hệ thống mạng Hệ điều hành mạng cung cấp sở cho phép người dùng sử dụng dịch vụ có sẵn thiết bị cụ thể Ví dụ: dịch vụ mà thường cung cấp hệ điều hành mạng cho phép người dùng đăng nhập vào máy tính khác từ xa thông qua dòng lệnh command : rlogin machine, giả dụ người dùng ngồi sau graphical workstation, dòng lệnh nhập vào từ bàn phím gửi tới máy tính từ xa, đầu kết từ máy tính từ xa hiển thị lên cửa sổ người sử dụng Hệ điều hành mạng rõ ràng mang tính nguyên thủy, thô sơ nhiều so với hệ điều hành phân tán, khác biệt lớn hai loại hệ điều hành phân tán nỗ lực cố gắng tạo suốt tuyệt đối, từ cung cấp single-view cho hệ thống Sự thiếu tính suốt hệ điều hành mạng có nhược điểm dễ nhận thấy, chúng thường khó sử dụng hơn, hay việc người dùng bắt buộc phải đăng nhập vào máy tính khác từ xa, copy file từ máy tính sang máy khác để sử dụng Nó có vấn đề quản lý, mà người đăng nhập từ xa vào máy tính X có account X, hay muốn sử dụng mật riêng họ, thay đổi password phải thực tất máy có account Ngoài việc quản lý quyền truy nhập phải xem xét máy tính cách xác Không có cách đơn giản thay đổi quyền truy cập lần cho nơi hệ thống Tính phi tập trung dẫn tới vấn đề bảo mật khó khăn để bảo vệ hệ thống trước kẻ công Nhưng hệ điều hành mạng có số lợi điểm so với hệ điều hành phân tán, máy tính mạng giống nút, chúng độc lập với nút khác nên dễ dàng để thêm hay loại bỏ máy tính hệ thống Trong số trường hợp, điều mà phải làm để thêm nút vào mạng kết nối máy tính vào hệ thống mạng, theo làm máy tính khác nhận biết Ví dụ mạng internet, để máy tính tham gia vào cần cho địa IP hay đơn giản tên miền DNS Middleware 2.1 Tại lại có xuất Middleware DOS có tính suốt cao vấn đề khó mở rộng truy cập từ xa yêu cầu tính cao Ngược lại, NOS mở rộng truy cập từ xa dễ dàng tính suốt lại không cao Từ đó, Middleware đời nhằm kết hợp ưu điểm hai HĐH lại 2.2 Vị trí Middleware Hệ phân tán Nhiều ứng dụng phân tán sử dụng trực tiếp giao diện lập trình cung cấp hệ điều hành mạng Thêm vào đí, ứng dụng thường sử dụng giao diện file hệ thống Vấn đề với cách tiếp cận việc phân tán khó suốt Một giải phải thêm vào lớp phần mềm nằm ứng dụng hệ điều hành mạng, cung cấp tầng trừu tượng hóa cao hơn, gọi phần dẻo Mỗi hệ thống cục phần hệ điều hành mạng nằm giả định có khả quản lý tài nguyên bổ sung vào việc giao tiếp đơn giản máy tính Đồng thời, phần dẻo khả quản lý node riêng biệt mà hoàn toàn giao cho hệ điều hành cục Một mục tiêu quan trọng khác phải che giấu tính phi hệ thống nằm bên tầng ứng dụng Vì vật nhiều hệ thống middleware cung cấp tập nhiều dịch vụ hoàn chỉnh không khuyến khích sử dụng giao diện khác họ Điều đồng nghĩa với việc bỏ qua lớp middleware gọi trực tiếp đến dịch vụ nằm hệ điều hành bên bị phản đối Middleware không phát minh nghiên cứu học thuật việc đạt tính suốt hệ phân tán Sau giới thiệu việc hệ điều hành mạng sử dụng rộng rãi, nhiều tổ chức thấy họ có vấn đề với ứng dụng dễ dàng tích hợp vào hệ thống đơn lẻ Tại điểm đó, nhà sản xuất bắt đầu xây dựng dịch vụ ứng dụng độc lập mức cao vào hệ thống họ Những ví dụ điển hình bao gồm hộ trợ cho giao dịch phân tán giao tiếp cao cấp sở hạ tầng Tất nhiên việc đồng ý sử dụng middleware không dễ dàng Một hướng tiếp cận thiết lập tổ chức nhằm đưa tiêu chuẩn thông thường cho giải pháp middleware Vào thời điểm tại, có số tiêu chuẩn sẵn sàng Những tiêu chuẩn nhìn chung không tương thích với tệ sản phẩm cài đặt tiêu chuẩn giống khác nhà sản xuất hoạt động 2.3 Middleware Tính mở Nhiều hệ thống phân tán đại nhìn chung xây dựng middleware cho hệ điều hành khác Với cách này, ứng dụng xây dựng cho hệ phân tán định trở thành độc lập với hệ điều hành Không may, việc độc lập lại bị thay phụ thuộc chặt chẽ với middleware định Vấn đề gây thật middleware thường mở so với khẳn định Một hệ thống phân tán thực mở định rõ giao diện hoàn chỉnh Hoàn chỉnh có nghĩa thứ cần cho việc cài đặt hệ thống, thực rõ Việc không hoàn thiện định nghĩa giao diện dẫn tới trường hợp nhà phát triển hệ thống bị ép phải dùng giao diện riêng họ Điều dẫn tới rơi vào tình trạng hai middleware đội phát triển có chung chuẩn ứng dụng viết middleware khó chuyển sang lại Một tình trạng tương tự hai cách cài đặt khác giao diện khác giao thức nằm tương hợp với Vd: hai cài đặt dựa hai giao thức truyền thông không tương thích với có sẵn hệ điều hành nằm Điều cần giao thức middleware giao diện middleware phải giống Một ví dụ khác, để đảm bảo tính tương hợp cài đặt khác nhau, thực thể bên hệ thống khác cần phải có mối quan hệ với Nếu thực thể hệ thống có địa URL, hệ thống khác lại địa mạng, điều dẫn tới việc tương tác chéo gặp vấn đề.Trong trường hợp đó, việc định nghĩa giao diện cần miêu tả tương đối xác việc liên kết 2.4 Phân loại middleware 2.4.1 Lời gọi thủ tục từ xa Thông điệp bất đồng (Remote Procedure Call and Asynchronous Message) Tại tầng trừu tượng, RPC cho phép lập trình viên gọi tới dịch vụ từ xa gọi thủ tục từ ứng dụng bên Cũng giống gọi hàm hay gọi thủ tục ngôn ngữ lập trình truyền thống, RPC khóa luồng liệu dịch vụ gọi yêu cầu đến dịch vụ Điều có nghĩa dịch vụ gọi tới thực yêu cầu, dịch vụ gọi khóa luồng gọi đợi đến có liệu trả thời gian chờ kết nối Hệ thống truyền thông điệp, ngược lại, dựa việc trừu tượng hóa hàng đợi bên gửi gửi liệu vào hàng đợi cho bên nhận thu nhận xử lý dựa Hệ thống truyền thông điệp điển hình thường hướng liệu hướng văn bản, hệ thống RPC hướng thủ tục hướng đối tượng Các ứng dụng dựa thông điệp thường trừu tượng hóa khóa thiết kế xoay quanh thông tin, ứng dụng dựa RPC tập trung vào đối tượng hàm để cung cấp dịch vụ hệ thống 2.4.2 Ngôn ngữ riêng biệt Độc lập ngôn ngữ Nhiều hệ thống middleware hộ trợ tích hợp ứng dụng viết nhiều ngôn ngữ lập trình khác Corba ví dụ siêu điển hình hỗ trợ nhiều ngôn ngữ ánh xạ tới Ngôn ngữ Định nghĩa Giao diện (Interface Definition Language - IDL) , dùng để định nghĩa thỏa thuận với đối tượng Corba Chủ đề tranh luận kiểu middleware hệ thống tính toán phức tạp, có lẽ liên quan đến hầu hết thứ - từ thiết bị cầm tay, laptop Windows đến server Unix - thường viết ngôn ngữ Tuy nhiên, nhiều hệ thống, J2EE, dựa việc đơn giản hóa có ngôn ngữ sử dụng Một vài hệ thống phân tán đơn ngôn ngữ khác phát triển sử dụng C++, Modula-3 Smalltalk 2.4.3 Độc quyền Tiêu chuẩn Các tranh luận tiêu chuẩn cho middleware thường khả tương hợp khả chuyển sản phẩm, họ thường tránh việc người sử dụng bị “khóa trái” cho phép người dùng lựa chọn middleware dựa chất lượng Trong thực tế, ý tưởng bị thay đổi nhiều, nhiều nhà cung cấp khẳng định họ theo tiêu chuẩn ép người dùng vào tình trạng bị “khóa trái” Mặt khác, cho dù nhà cung cấp middleware dựa theo tiêu chuẩn họ độc quyền tính mà chưa có tiêu chuẩn đề cập tới Không tiêu chuẩn tất vấn đề xảy - kể tiêu chuẩn lâu đời Corba hay tập hợp tiêu chuẩn tạo Java Community Process (www.jcp.org) Hơn nữa, nỗ lực tiêu chuẩn hóa lâu, quan liêu, đắt đỏ trị Các nỗ lực phát triển độc quyền cố gắng tránh khía cạnh tiêu cực bảo vệ bí mật có lợi trước đối thủ cạnh tranh Những công ty khổng lồ (như Microsoft) hay công ty nhỏ thường đối tượng theo đuổi độc quyền Những công ty lớn tin nỗ lực độc quyền họ có lúc trở thành tiêu chuẩn thực tế dựa vào số lượng người sử dụng lớn Những công ty nhỏ tin hệ thống họ đủ “hư cấu” để gián đoạn thị trường bắt người khác phải tiêu chuẩn hóa theo họ 2.4.4 Thiết bị nhúng Hệ thống doanh nghiệp Trong lịch sử, middleware nhắm tới hệ thống doanh nghiệp, điển hình việc hệ thống tính toán nằm tách biệt nhau, thường bao gồm nhiều máy tính lớn, nằm nhiều phận khác doanh nghiệp Những hệ thống thường tìm cách cải thiện quy trình kinh doanh tự động Những hệ thống nhúng, với môi trường phần cứng đặc thù yêu cầu phần mềm điển hình, thường bị giới hạn middleware tận gần Sự phát triển phần cứng phần mềm làm middleware cho phần nhúng khả thi, nhiên, lập trình tạo hệ thống nhúng từ kit có sẵn Các middleware nhúng phải đối mặt với ràng buộc thời gian thực khả dự đoán kích cỡ tính Cũng thiết bị nhúng, hệ thống doanh nghiệp phải giải tải chạy thời gian thực Các phần nhúng doanh nghiệp cần phải có khả cấu hình linh hoạt cao yêu cầu khả quản lý hệ thống chạy cho phép người quản trị hệ thống thay đổi tác vụ phù hợp Vì việc cần phải tích hợp hàng loạt hệ thống riêng rẽ, người sử dụng thường đánh giá middleware doanh nghiệp cách dàng tương thích hệ thống hay không Mặt khác, người sử dụng lại đánh giá middleware thời gian thực - nhúng dựa tiêu thụ nhớ, hiệu suất khả dự đoán trước 2.5 Mô hình middleware Để giúp việc phát triên tích hợp ứng dụng phân tán đơn giản có thể, phần lớn middleware dựa vài mô hình mẫu thiết kế đặc tả phân tán giao tiếp Một mô hình tương đối đơn giản coi thứ file Một ứng dụng mở file, đọc ghi file sau đóng lại Vì file chia sẻ vài tiến trình, việc tương tác trở nên đơn giản truy cập file Một cách tiếp cận tương tự, xây dựng middleware lấy hệ thống file phân tán làm trung tâm Trong nhiều trường hợp, middleware có bước so với hệ điều hành mạng việc tính phân tán suốt, hộ trợ file truyền thống (vd file dùng để lưu trữ liệu) Ví dụ, tiến trình thường yêu cầu phải khởi động cách rõ ràng máy Middleware dựa hệ thống file phân tán chứng minh có khả mở rộng, đóng góp nhiều vào phổ biến Một mô hình middleware khác dựa RPC Trọng tâm mô hình che giấu tương tác mạng cách cho tiến trình gọi từ xa Khi gọi thủ tục vậy, tham số truyền đến máy xa cách suốt, sau thủ tục thực thi trả kết Chính vậy, tiến trình gọi thủ tục hoàn toàn đến thực tế việc truyền thông mạng thay thế, ngoại trừ việc giảm chút hiệu suất Khi mà hướng đối tượng trở nên thịnh hành, việc gọi hàm vượt qua ranh giới máy việc truy cập vào đối tượng máy xa cách suốt hoàn toàn khả thi Điều dẫn tới việc có nhiều hệ thống middleware đặt khái niệm đối tượng phân tán.Bản chất đối tượng phân tán mà đối tượng cài đặt giao diện che giấu thông tin bên đối tượng trước người sử dụng Một giao diện bao gồm phương thức mà đối tượng cài đặt.Thứ mà tiến trình thấy đối tượng giao diện Mô hình đơn giản hóa việc sử dụng hệ thống mạng có lẽ diễn tả tốt qua World Wide Web Sự thành công Web phần lớn dựa vào đơn giản hiệu cao văn phân tán Trong mô hình web, thông tin xếp vào văn với văn lại nằm máy hoàn toàn suốt địa điểm Các văn chứa đường dẫn liên kết tới vị trí để người dùng lấy hiển thị hình Khải niệm văn không giới hạn việc chứa thông tin text Web hỗ trợ video audio loại văn đồ họa 10 2.6 Dịch vụ Middleware Các hệ thống middleware có số dịch vụ Mọi hệ thống middleware, cách hay cách khác, cố để đạt tính suốt, cách cung cấp phương tiện liên lạc tầng cao che giấu thông điệp tầng thấp truyền mạng máy tính Việc lập trình giao diện tầng giao vận cung cấp hệ điều hành mạng hoàn toàn bị thay phương tiện khác Việc truyền thông hỗ trợ phụ thuộc vào mô hình phân tán middleware cung cấp cho người dùng ứng dụng Chúng ta đề cập đến RPC đối tượng phân tán Thêm vào đó, nhiều hệ thống middleware cung cấp phương tiện nhằm truy cập cách suốt đến liệu từ xa hệ thống file phân tán hay sở liệu phân tán Một dịch vụ khác tất middleware đặt tên Tên dịch vụ cho phép đối tượng chia sẻ tìm kiếm, so sánh với danh bạ điện thoại Mặc dù việc đặt tên trông đơn giản độ phức tạp tăng lên hệ thống cần mở rộng Vấn đề nằm việc tìm kiếm tên hiệu hệ thống lớn, vị trí thực thể phải giả sử cố định Việc giả định làm World Wide World, văn đặt tên URL Mỗi URL chứa tên máy chủ chứa văn Vì văn bị chuyển sang máy chủ khác, URL ngưng hoạt động Nhiều hệ thống middleware thường cung cấp phương tiện lưu trữ, thường liên quan đến tính cố định Trong hình thái đơn giản nhất, cố định cung cấp thông qua hệ thống file phân tán, middleware phát triển tích hợp sở liệu vào hệ thống cung cấp phương tiện cho ứng dụng để kết nối tới sở liệu Trong môi trường nơi mà liệu lưu trữ đóng vai trò quan trọng, phương tiện nhìn chung cung cấp giao dịch phân tán Một thuộc tính quan trọng khác giao dịch cho phép thao tác đọc ghi diễn cách nguyên tử Nguyên tử có ý nghĩa giao dịch phải diễn thành công, tức tất thao tác ghi thực thi giao dịch thất bại, liệu không bị tác động Giao dịch phân tán làm việc liệu nằm máy khác Cuối cùng, hệ thống middleware sử dụng môi trường thử nghiệm cung cấp pương tiện bảo mật So sánh với hệ điều hành mạng, vấn đề với bảo mật middleware nên bị xâm nhập Theo nguyên 11 tắc, tầng middleware dựa hệ điều hành nằm để hỗ trọ vấn đề bảo mật.Điều dẫn tới bảo mật cài đặt phần thân Kết hợp với việc cần thiết phải mở rộng, bảo mật trở thành dịch vụ khó cài đặt hệ phân tán 2.7 Thử thách cho Middleware Mặc cho khác biệt hệ thống cạnh tranh với nhau, tất middleware chia sẻ đặc điểm chung Phần lớn người muốn middleware phải linh hoạt đồng thời phải có hiệu cao Để đạt hai yếu tố mức chấp nhận tương đối khó khăn Người sử dụng muốn chọc vào phần middleware để kiểm soát thứ họ cần họ muốn hiệu ứng dụng phải cao họ chạy hệ điều hành Quá nhiều cách cấu hình gây khó khăn cho người mới, họ muốn đơn giản trình cài đặt middleware để chạy Tìm kiếm cân điều thực thử thách khiến nhà kiến trúc sư thiết kế middleware ngủ Cùng với phát triển phần cứng, khả phối hợp middleware thông qua cấu hình thay qua lập trình tăng lên Bằng cách phân tách vấn đề với phát triển với việc triển khai, việc tiếp cận giảm chi phí bảo trì middleware cho ứng dụng Mục tiêu thay đổi cách chương trình hoạt động mà không cần phải chỉnh sửa, biên dịch lại, kiểm thử lại triển khai lại mã nguồn Việc triển khai có ví dụ điển hình Enterprise Java Bean Tuy nhiên hiệu ứng phụ việc làm tăng việc cấu hình ứng dụng, khiến cho việc cấu hình phức tạp y lập trình Giảm độ phức tạp hệ thống thực thử thách cho nhà cung cấp middleware Tuy nhiên , hệ thống middleware đồng thời vấn đề mà thân chúng trở nên phức tạp Rõ ràng nhà thiết kế middleware cần chắn hệ thống họ đủ linh hoạt họ cần có cài đặt hợp lý khiến việc cấu hình lại không cần thiết phần lớn trường hợp Có lẽ thử thách có ý nghĩa ngày tạo điều kiện cho ứng dụng Internet mở rộng chuyển thành ứng dụng tích hợp World WIde Web cho thấy Internet hỗ trợ tương tác người mua với người bán thành công Tuy nhiên, kiến trúc website không học theo mô hình ứng dụng hai lớp truyền thống, mà kèm giới hạn Trong dự án tích hợp điều hành cổ điển , đóng gói sở liệu nằm sau máy chủ 12 ứng dụng, không đơn giản hay dễ dàng, middleware đồng thời làm chúng trở nên rõ ràng Mục tiêu xây dựng dựa thành công mở rộng tương thích ứng dụng từ intranet lên internet Bài tập Rectangle.java: public interface Rectangle { void scale(float factor); float getWidth(); void setWidth(float width); float getHeight(); void setHeight(float height); float area(); void printInformation(); } NonScaleableRectangle.java: public class NonScaleableRectangle { private float width,height; public NonScaleableRectangle(float width, float height) { this.width = width; this.height = height; } public void setWidth(float width) { this.width = width; } public float getWidth() { return width; } public void setHeight(float height) { this.height = height; } public float getHeight() { return height; 13 } public float area() { return width * height; } public void printInformation(){ System.out.println(width); System.out.println(height); System.out.println(area()); } } 14 ScaleableRectangle1.java: public class ScaleableRectangle1 extends NonScaleableRectangle implements Rectangle { public void scale(float factor){ setWidth(factor * getWidth()); setHeight(factor * getHeight()); } } ScaleableRectangle2.java: public class ScaleableRectangle2 implements Rectangle { private NonScaleableRectangle r; public ScaleableRectangle2(NonScaleableRectangle r) { this.r = r; } public float getWidth() { return r.getWidth(); } public void setWidth(float w) { r.setWidth(w); } public float getHeight() { return r.getHeight(); } public void setHeight(float h) { r.setHeight(h); } public void scale(float factor) { setWidth(factor*getWidth()); setHeight(factor*getHeight()); } public float area(){ return r.area(); } public void printInformation() { r.printInformation(); } } 15

Ngày đăng: 13/11/2016, 23:41

Từ khóa liên quan

Mục lục

  • 1. Phần mềm trong Hệ phân tán.

    • 1.1. Hệ điều hành phân tán (Distributed Operating System)

    • 1.2. Hệ điều hành mạng (Network Operating System)

    • 2. Middleware

      • 2.1. Tại sao lại có sự xuất hiện của Middleware

      • 2.2. Vị trí của Middleware trong Hệ phân tán

      • 2.3. Middleware và Tính mở

      • 2.4. Phân loại middleware

        • 2.4.1. Lời gọi thủ tục từ xa và Thông điệp bất đồng bộ (Remote Procedure Call and Asynchronous Message)

        • 2.4.2. Ngôn ngữ riêng biệt và Độc lập về ngôn ngữ.

        • 2.4.3. Độc quyền và Tiêu chuẩn

        • 2.4.4. Thiết bị nhúng và Hệ thống doanh nghiệp.

        • 2.5. Mô hình middleware.

        • 2.6. Dịch vụ của Middleware

        • 2.7. Thử thách cho Middleware.

        • 3. Bài tập

Tài liệu cùng người dùng

Tài liệu liên quan