Tải bản đầy đủ (.doc) (21 trang)

tiểu luận các hệ phân tán dựa trên web

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 (277.89 KB, 21 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
  
TIỂU LUẬN
ĐỀ TÀI
CÁC HỆ PHÂN TÁN DỰA TRÊN WEB
Giảng viên TS. Vũ Thị Hương Giang
Nhóm thực hiện Nhóm 14
Trương Thủy Phương
Nguyễn Xuân Trường
Trần Thị Mơ
Trần Đăng Minh
Lớp 12BCNTT2
Hà Nội, Năm 2012
MỤC LỤC
1. Định nghĩa 3
1.1 Định nghĩa 3
1.2 Mục tiêu của hệ phân tán 4
1.2.1 Kết nối người sử dụng và tài nguyên 4
1.2.2 Tính trong suốt 4
1.2.3 Tính mở 5
1.2.4 Tính co giãn (Scalability) 5
1.3 Các khái niệm phần cứng 5
1.3.1 Phân loại máy tính 5
1.4 Các khái niệm phần mềm 6
1.5 Mô hình client - server 6
TÀI LIỆU THAM KHẢO 19
LỜI MỞ ĐẦU
Ngày nay, với sự phát triển như vũ bão của Internet, đòi hỏi cần có một hệ
thống quản lý cơ sở dữ liệu cho trang Web mạnh và đáp ứng nhu cầu truy cập
của người sử dụng. Nếu như hệ thống quản trị cơ sở dữ liệu theo hình thức tập


trung thì việc đáp ứng những yêu cầu của người dùng sẽ gây ra tắc nghẽn và đòi
hỏi yêu cầu lưu trữ của hệ thống dữ liệu lớn hơn rất nhiều. Với việc xây dựng
các hệ phân tán, giúp hệ thống phân tán dữ liệu trên các trạm của mạng máy
tính, giúp xóa bỏ việc dư thừa dữ liệu của các hệ xử lý tệp truyền thống. Đồng
thời đảm bảo tính nhất quán của dữ liệu sử dụng. Internet cũng là một hệ thống
phân tán rất lớn. World Wide Web đã thay đổi cách chúng ta làm kinh doanh,
học tập và nghiên cứu… Nó cũng mang lại một rất nhiều thách thức, hẳng hạn
như nội dung gần như vô hạn, tài nguyên đa dạng, và nội dung thường xuyên
được cập nhật. Với quyên truy cập chính đáng, nó cho phép người sử dụng, bất
cứ nơi nào có thể sử dụng các dịch vụ như Web Wide World (WWW). email và
truyền tập tin Ở bài tiểu luận này, chúng tôi tập trung tìm hiểu về đặc điểm và
cách xử lý dữ liệu của các hệ phân tán dựa trên Web.
Chương 1 : Tổng quan về hệ phân tán.
1. Định nghĩa.
1.1 Định nghĩa
Có nhiều định nghĩa về hệ phân tán:
- Định nghĩa 1: Hệ phân tán là tập hợp các máy tính tự trị được kết nối với
nhau bởi một mạng máy tính và được cài đặt phần mềm hệ phân tán.
- Định nghĩa 2: Hệ phân tán là một hệ thống có chức năng và dữ liệu phân
tán trên các trạm (máy tính) được kết nối với nhau bởi một mạng máy
tính.
- Định nghĩa 3: Hệ phân tán là một tập các máy tính độc lập giao tiếp với
người dùng như một hệ thống thống nhất, toàn vẹn.
Như vậy, có thể nói : Hệ phân tán = mạng máy tính + phần mềm hệ phân tán.
Phân loại hệ phân tán.
1.2 Mục tiêu của hệ phân tán.
1.2.1 Kết nối người sử dụng và tài nguyên
Hệ phân tán giải quyết bài toán chia sẻ tài nguyên trong hệ thống
(resource sharing).
1.2.2 Tính trong suốt

Hệ phân tán giúp ẩn giấu sự rời rạc và những nhược điểm nếu có của hệ
phân tán đối với người sử dụng (end - user) và những nhà lập trình ứng dụng
(application programmer).
Tính trong suốt thể hiện qua các đặc trưng:
- Truy nhập (Access transparency): che giấu sự khác biệt trong cách
biểu hiện dữ liệu và cách thức truy nhập tài nguyên.
- Vị trí (Location transparency): che giấu vị trí tài nguyên → người
dùng hoàn toàn không biết về vị trí vật lý của tài nguyên trong hệ
thống.
- Di trú (Migration transparency): che giấu việc tài nguyên di chuyển
sang máy khác → tài nguyên có thể không nằm ở vị trí cố định, mà nó
có thể được di chuyển sang các máy khác nhau trong hệ thống để phục
vụ các yêu cầu khác nhau mà không ảnh hưởng tới việc truy nhập tài
nguyên.
- Di chuyển (Relocation transparency): che giấu việc tài nguyên có thể
bị di chuyển sang nơi khác → tài nguyên có thể di chuyển sang nơi
khác ngay cả khi nó đang bị truy cập.
- Nhân bản (Repilcation transparency): che giấu việc sao chép tài
nguyên → việc sao chép tài nguyên giúp đơn giản hóa và tăng tốc độ
truy cập dữ liệu, các bản sao đặt gần hoặc ngay tại nơi truy cập dữ liệu.
Các bản sao này phải có cùng tên, để che giấu với người dùng; và hệ
thống cần có tính trong suốt về vị trí, để đảm bảo khả năng quản lý các
bản sao khác nhau trên các máy trong hệ thống.
- Tương tranh (Concurrency transparency): che giấu sự chia sẻ tài
nguyên bởi một số người sử dụng, nhiều người dùng có thể cùng truy
cập dữ liệu tại cùng một thời điểm, đặc biệt sử dụng nhiều trong mạng
truyền thông.
- Lỗi (Failure transparency): che giấu lỗi và khắc phục lỗi → đảm bảo
người dùng hoàn toàn không biết về các lỗi xảy ra trong hệ thống và sự
khắc phục các lỗi này.

1.2.3 Tính mở
Hệ phân tán được gọi là mở nếu nó cung cấp các dịch vụ theo các quy tắc
chuẩn mô tả cú pháp và ngữ nghĩa của dịch vụ đó. Thông thường trong hệ phân
tán các dịch vụ thường đặc tả qua các giao diện bằng ngôn ngữ đặc tả giao diện
(Interface Definition Language- IDL). Vì thế chỉ quan tâm đến cú pháp. Nó cho
phép các dịch vụ khác nhau cùng chung sống. Nếu các giao diện của hệ phân tán
được đặc tả đầy đủ và đúng đắn.
1.2.4 Tính co giãn (Scalability)
Một hệ phân tán được gọi là có tính co giãn nếu nó thích nghi với sự thay
đổi quy mô của hệ thống. Thể hiện trên các khía cạnh sau: - Dễ bổ sung người
sử dụng và tài nguyên hệ thống - Khi hệ thống thay đổi quy mô về mặt địa lý
dẫn đến sự thay đổi về vị trí địa lý của người sử dụng và các tài nguyên. - Hệ
thống có thay đổi quy mô về quản trị.
1.3 Các khái niệm phần cứng.
1.3.1 Phân loại máy tính
a. Máy tính có chia sể bộ nhớ/máy tính không chia sẻ bộ nhớ
- Các loại máy tính có chia sẻ bộ nhớ (Shared memory): các loại
máy đa xử lý (multiproccessor).
- Các máy tính không chia sẻ bộ nhớ (Private memory): các hệ
thống multicomputors.
b. Hệ thuần nhất / hệ không thuần nhất;
- Hệ thống thuần nhất: mạng máy tính cùng sử dụng một công
nghệ, các bộ xử lý là như nhau, truy cập đến cùng một bộ nhớ giống nhau.
Thường dùng trong hệ thống có tính toán song song.
- Hệ không thuần nhất: những máy tính khác nhau kết nối với nhau.
1.4 Các khái niệm phần mềm.
a. DOS (distributed OS): Là hệ điều hành cho các hệ multiproccessor và
các hệ homogenous multicomputer. Mục tiêu là ẩn giấu và cung cấp các dịch vụ
quản trị tài nguyên. Đặc điểm là các dịch vụ có thể được thực hiện bởi các lời
triệu gọi từ xa.

b. NOS (Network OS): Là hệ điều hành cho các hệ thống heterogenous
multicomputer (LAN, WAN). Mục tiêu của NOS là cung cấp các dịch vụ từ xa.
c. Middleware: Là tầng phụ nằm giữa tầng dịch vụ của NOS và tầng ứng
dụng phân tán.
1.5 Mô hình client - server
Tổng quan về mô hình Client – server
Mô hình client - server trong một hệ phân tán được phân chia thành hai
nhóm chính là nhóm các server và nhóm các client. Nhóm các server chứa các
dịch vụ đặc biệt. Nhóm các client là nhóm gửi yêu cầu đến server để được sử
dụng các dịch vụ đó trên server.
Phân tầng các ứng dụng:
Việc phân định rạch ròi chức năng của client và server đến giờ cũng rất
khác biệt và không thuần nhất. Do đó người ta đưa ra ý tưởng là chia thành ba
mức chức năng: User – interface - level: bao gồm các chương trình cung cấp
giao diện cho phép người sử dụng tương tác với chương trình ứng dụng.
Chương trình ứng dụng bao gồm 2 nhóm:
- Processing level: làm nhiệm vụ xử lý các tác vụ của người dùng trên
cơ sở dữ liệu
- Data level: gồm các chương trình duy trì các dữ liệu mà các chương
trình ứng dụng xử lý.
2. Truyền thông
Truyền thông đa tiến trình là trái tim của hệ phân tán. Hệ phân tán hiện
đại chứa hàng nghìn, thậm chí hàng triệu tiến trình đồng thời hoạt động trong
mạng, tiêu biểu như Internet. Trong phần này, ta sẽ xét tới vai trò của các mô
hình truyền thông hiện đại trong việc đảm bảo tính trong suốt của hệ phân tán:
• Gọi thủ tục từ xa RPC (Remote Procedure Call)
• Triệu gọi đối tượng từ xa ROI(Remote Object Invocation)
• Truyền thông điệp MOM (Message Oriented Middleware)
• Truyền thông hướng dòng (Stream Oriented Middleware)
2.1. Gọi thủ tục từ xa RPC

Rất nhiều hệ phân tán dựa trên việc trao đổi thông điệp chi tiết giữa các
tiến trình. Tuy nhiên các thủ tục truyền và nhận trong giao tiếp không hoàn toàn
được che giấu, trong khi tính trong suốt trong truy cập là một trong những đặc
tính quan trọng của hệ phân tán.
Vấn đề này đã được đặt ra từ lâu nhưng chỉ cơ bản được giải quyết khi
Birrell và Nelson (1984) đề ra một cách xử lý giao tiếp hoàn toàn khác. Hai
người đã đề ra một số quy tắc cho phép chương trình gọi các hàm trên máy
khác. Khi một tiến trình trên máy A gọi một hàm trên máy B, tiến trình trên máy
A sẽ tạm thời bị treo và việc xử lý hàm được gọi được thực hiện trên máy B.
Thông tin có thể truyền đến máy được gọi qua các tham số và trả kết quả về
trong hàm kết quả. Không có bất kì thông điệp của tiến trình này biểu hiện ra
bên ngoài đối với người lập trình. Đây chính là nội dung của phương pháp RPC.
Mặc dù ý tưởng đưa ra có vẻ rất đơn giản và hiệu quả nhưng vẫn tồn tại
một số vấn đề như : các hàm trên máy gọi và được gọi chạy trên các máy khác
nhau và các máy này xử lý trên các không gian địa chỉ khác nhau , điều này sẽ
tạo ra một số rắc rối,bên cạnh đó các tham số và kết quả phải được truyền giữa
các máy, tuy nhiên nếu các máy này không đồng bộ sẽ dẫn đến một số vấn đề rất
phức tạp. Cuối cùng có thể một trong hai máy hoặc thậm chí cả hai máy đều
hoạt động không đúng và mỗi lỗi lại gây ra cac vấn đề khác nhau. Tuy nhiên,
hầu hết các vấn đề trên đều có thể xử lý được và RPC đang trở thành một công
nghệ được sử dụng rộng rãi trên rất nhiều hệ phân tán.
Hoạt động của RPC
Các quy ước trong thủ tục gọi
- Khi một thủ tục được thực hiện , các tham số của nó đươc đẩy vào trong
ngăn xếp. Sau khi thủ tục được thực hiện xong , kết quả được lưu trong thanh
ghi. Thủ được trả quyền điều khiển, các tham số trong ngăn xếp được xóa và
ngăn xếp trở về trạng thái trước khi có lời gọi hàm.
- Các cách truyền tham số:
• Truyền bằng tham trị
• Truyền bằng tham biến

• Truyền bằng cách sao chép và phục hồi ( không phổ biến)
Client stub và Server stub
Cách thức hoạt động của RPC ( cách thức RPC hoạt động một cách trong suốt)
- Client stub và server stub ở máy client và server là thành phần nhằm
giảm nhẹ công việc cho client và server, làm cho hệ thống hoạt động một cách
trong suốt hơn.
- Trong mô hình client – server thì lời gọi thủ tục từ xa được thực hiện
qua các bước sau:
Một phiên làm việc theo giao thức RPC
(1) Tiến trình muốn thực hiện thủ tục ở máy client sẽ gọi client stub.
(2) Client stub sẽ tạo một bản tin và có lời gọi đến hệ điều hành của client đó.
(3) Hệ điều hành của máy client sẽ gửi bản tin đó tới hệ điều hành của máy
server.
(4) Hệ điều hành của server sẽ gửi bản tin tới server stub.
(5) Server stub lấy các thông tin của gói tin và gọi server tương ứng.
(6) Server thực hiện công việc được yêu cầu và trả kết quả về cho server
stub.
(7) Server stub đóng gói kết quả đó vào bản tin rồi gọi hệ điều hành của
server đó.
(8) Hệ điều hành của máy server này sẽ gửi bản tin kết quả đó hệ điều hành
của
máy client.
(9) Hệ điều hành của máy client sẽ gửi bản tin cho client stub.
(10) Client stub sẽ mở gói tin kết quả và trả về cho client.
Các mô hình RPC mở rộng:
- RPC dị bộ (Asynchronous RPC): Client gửi tới Server lời gọi thủ tục
và chờ bản tin chấp nhận từ Server. Server sẽ gửi bản tin chấp nhận và
thực hiện yêu cầu RPC. Client tiếp tục thực hiện công việc của mình
mà không chờ kết quả từ Server.
- RPC đồng bộ trễ (Deferred Asynchronous RPC): Client gửi tới Server

lời gọi thủ tục và chờ bản tin chấp nhận từ Server. Server sẽ gửi bản
tin chấp nhận và thực hiện yêu cầu RPC. Client tiếp tục thực hiện công
việc của mình. Khi thực hiện thủ tục xong Server sẽ thực hiện lời gọi
tới Client báo nhận kết quả. Client thực hiện ngắt, nhận kết quả và
thông báo đã nhận kết quả thành công.
- RPC đơn tuyến (one – way RPC): Sau khi thực hiện lời gọi thủ tục từ
xa tới server, client không chờ đợi thông báo nhận yêu cầu thành công
mà thực hiện ngay các công việc khác của mình.
2.2 Triệu gọi đối tượng từ xa ROI(Remote Object Invocation)
Đối tượng phân tán:
- State: các dữ liệu đã được đóng gói.
- Method: Các thao tác có thể thực hiện trên dữ liệu.
- Interface: nơi để giao tiếp với các phương thức của đối tượng.
Các bước thực hiện triệu gọi đối tượng từ xa.
- Khi cần triệu gọi các phương thức từ xa, client sẽ gửi yêu cầu đến
proxy – một thể hiện của interface.
- Proxy sẽ marshal (sắp xếp và đưa vào hàng theo thứ tự) các phương
thức được yêu cầu vào một bản tin rồi gửi cho hệ điều hành của máy
client.
- Hệ điều hành của client sẽ gửi bản tin yêu cầu đó đến hệ điều hành của
server.
- Hệ điều hành server nhận bản tin và chuyển cho skeleton (giống server
stub của RPC).
- Skeleton sẽ unmarshal bản tin nhận được đẻ gửi đến interface của đối
tượng có phương thức tương ứng.
- Đối tượng thực thi phương thức rồi trả kết quả về cho skeleton.
- Skeleton marshal kết quả nhận được rồi gửi trả về cho hệ điều hành
của client.
- Hệ điều hành của client nhận bản tin kết quả rồi chuyển tới cho proxy.
- Proxy unmarshal bản tin đó rồi chuyển kết quả về cho client.

2.3 Truyền thông điệp MOM (Message Oriented Middleware)
Các loại truyền thông cơ bản
- Truyền thông kiên trì (Persistent communication): Một trạm muốn
gửi bản tin đi trên mạng, nó sẽ gửi bản tin đó đến interface của máy
mình. Qua bộ nhớ đệm, bản tin đó được truyền đi trong mạng cục bộ
để đến mail server cụ bộ. Mail server này tạm thời lưu trữ bản tin đó
vào bộ nhớ đệm của mình, xác định địa chỉ trạm đích, rồi gửi tới server
cục bộ của trạm đích tương ứng (có thể đi qua nhiều mail server trung
gian khác). Tới mail server cuối cùng, bản tin lúc này sẽ được lưu lại
trước khi phát cho trạm đích tương ứng.
- Truyền thông nhất thời (Transient communication): Bản tin gửi đi
chỉ được lưu lại trong phiên trao đổi đó. Khi phiên trao đổi đã hoàn
thành hoặc khi kết nối bị hủy bỏ thì các bản tin đó cũng bị hủy bỏ trên
các server.
- Truyền thông đồng bộ (Synchronous communication): khi trạm gửi
gửi đi một bản tin thì nó sẽ ở trạng thái khóa (blocked) cho đến khi
nhận được thông báo bản tin đó đã đến đích thành công.
- Truyền thông dị bộ (Asynchronous communication): khi trạm gửi
gửi đi bản tin, nó sẽ tiếp tục thực hiện công việc của mình. Điều này
cũng có nghĩa là bản tin đó được lưu lại trên bộ nhớ đệm của trạm gửi
hoặc của server cục bộ.
Một số loại truyền thông hổ hợp.
- Truyền thông dị bộ, kiên trì: bản tin được lưu trữ lâu dài hoặc là ở bộ
nhớ đệm của trạm gửi hoặc là trên server truyền thông đầu tiên mà bản
tin đó tới.
- Truyền thông đồng bộ, kiên trì: bản tin được lưu trữ lâu dài ở trạm
nhận, trạm gửi sẽ ở trạng thái blocked cho đến khi bản tin được lưu trữ
ở bộ nhớ đệm trạm nhận.
- Truyền thông dị bộ, nhất thời: sau khi lưu trữ bản tin cần gửi ra bộ
nhớ đệm của máy mình, trạm gửi sẽ tiếp tục thực hiện công việc của

mình. Cùng lúc, bản tin sẽ được truyền tới trạm nhận. Khi bản tin đến
được trạm nhận mà trạm nhận đó lại không làm việc, khi đó quá trình
truyền thông bị hủy bỏ.
- Truyền thông đồng bộ, nhất thời: bản tin không được lưu trữ lâu dài.
Khi gửi đi một bản tin, trạm gửi sẽ chờ bản tin báo đã nhận thành công
của trạm nhận gửi về mới thực hiện tiếp công việc của mình.
2.4 Truyền thông hướng dòng (stream- oriented communication).
Một số khái niệm cơ bản.
- Medium (số nhiều là media) : chỉ các phương tiện dùng để truyền
thông tin như các thiết bị lưu trữ, đường truyền, các phương tiện hiển
thị…
- Continuous media: quan hệ thời gian giữa các mục là yếu tố cơ bản để
thông dịch đúng ngữ nghĩa thực sự của dữ liệu.
- Discrete media: quan hệ thời gian không còn là yếu tố cơ bản để thông
dịch đúng dữ liệu.
- Data stream: là một chuỗi các đơn vị dữ liệu. Với data stream thì thời
gian là yếu tố quyết định. Để kiểm soát thời gian người ta đưa ra ba
phương thức truyền sau:
- Truyền dị bộ (asynchronous transmission mode): các mục dữ liệu
truyền tuần tự và không có ràng buộc thời gian đối với việc truyền.
- Truyến đồng bộ (synchronous transmission mode): quy định trước độ
trễ tối đa cho mỗi đơn vị dữ liệu trong data stream.
- Truyền đẳng thời (isochronous transmission mode): quy định độ trễ
lớn nhất và nhỏ nhất cho mỗi đơn vị dữ liệu trong data stream. Cách
truyền này đóng một vai trò quan trọng trong việc trình diễn audio và
video.
- Dòng đơn (simple stream) là dòng chỉ gồm một chuỗi đơn vị dữ liệu.
- Dòng phức (complex stream): bao gồm nhiều chuỗi đơn vị dữ liệu
khác nhau. Mỗi chuỗi này được gọi là một dòng con (sub stream).
Đồng bộ các dòng.

- Đồng bộ đơn giản: thực hiện đồng bộ giữa dòng trễ và dòng liên tục.
Ví dụ trong việc trình diễn slide có kèm âm thanh. Dòng hình ảnh slide
là dòng trễ còn dòng âm thanh là dòng liên tục, phải đồng bộ hai dòng
này để thu được kết quả trình diễn như ý muốn.
- Đồng bộ phức tap: là việc đồng bộ giữa các dòng dữ liệu liên tục. Ví
dụ trong việc xem phim trực tuyến, cả dòng âm thanh và dòng hình
ảnh đều là các dòng liên tục cần phải được đồng bộ.
Chương 2 : Các hệ phân tán dựa trên Web
1. Giới thiệu
World Wide Web đã thay đổi cách chúng ta làm kinh doanh, học tập và
nghiên cứu. Web cũng mang lại rất nhiều thách thức, chẳng hạn như nội dung
gần như vô hạn, tài nguyên đa dạng, và việc bảo trì và cập nhật nội dung thường
xuyên. Việc tạo ra một hệ thống phân tán giúp giải quyết các thách thức trên. Ở
đó, các thành phần trong mạng tự động kết nối thông tin liên lạc và có tính nhất
quán với môi trường sử dụng, khả năng chia sẻ tài nguyên, mở rộng mà minh
bạch…
Web - Based Database Distributed Systems (WBDB): Kiến trúc hệ phân
tán dựa trên Web được thiết kế dựa trên sự phản ánh, sắp xếp không gian dữ liệu
ứng dụng và các phân phối tính toán. Các hệ cơ sở dữ liệu phân tán trên Web
khác nhau tùy theo công nghệ và các yêu cầu khác nhau.
WBDB có thể được sử dụng cho một loạt các chức năng:
- Tạo danh mục sản phẩm;
- Thương mại điện tử cho phép ngay lập tức cập nhật giá cả, chi tiết
sản phẩm…
- Duy trì các chi tiết khách hàng hoặc người sử dụng email, tài liệu
tham khảo tại công ty…
- Trong các hoạt động, hội họp…
WBDB có một số lợi thế:
- Bảo trì và cập nhật - một WBDB phân biệt nội dung (cơ sở dữ liệu)
từ trình bày (Một trang HTML). Điều đó có nghĩa là chủ sở hữu của một trang

web có thể cập nhật nội dung của các trang web mà không cần liên tục phải đi
thông qua quản trị trang web hoặc nhà thiết kế của nó.
- Có thể dùng lại mô đun bằng cách thiết kế mẫu, dễ dàng tái sử dụng
nội dung trên một trang web khác hoặc sửa đổi nó để phù hợp với một thiết kế
mới.
- Đối với người sử dụng, thực hiện tìm kiếm chính xác hơn và họ có
thể bị giới hạn một số lĩnh vực do không có quyền truy cập. Điều đó giúp chất
lượng truy cập tốt hơn so với tìm kiếm toàn trang.
- Phân tán cập nhật dữ liệu - với bên phải giao diện, ngay cả một
người dùng mới làm quen có thể cập nhật cơ sở dữ liệu thông tin.
- Đảm bảo tính an ninh cơ sở dữ liệu giúp đảm bảo rằng nội dung
được truy cập bởi người dùng có thẩm quyền.
Nói chung, WBDB có thể được xem xét như là một cơ sở dữ liệu
khổng lồ duy nhất cũng như nhiều nguồn dữ liệu. Hiện có rất nhiều công nghệ
mà có thể được sử dụng cho việc thiết kế hệ cơ sở dữ liệu. Ngôn ngữ cho các
ứng dụng web và máy chủ web là Java, PHP, Perl, HTML, DHTML, XML,
SQL và công nghệ truy cập bao gồm CGI, JavaScript, Servlet, JDBC, và
ODBC. Cơ sở dữ liệu doanh nghiệp thường gặp bao gồm Oracle, Sysbase,
Informix, DB2, MySQL, SQLServer.
2. Các hệ phân tán dựa trên Web
2.1 Kiến trúc hai lớp (tầng) của WBDB
Cấu hình của một không gian tối thiểu WBDB là kiến trúc hai tầng và nó
rất giống với những khách hàng máy chủ truyền thống mô hình. Các khách hàng
trong kiến trúc hai tầng khá mỏng, và những ứng dụng nhẹ trách nhiệm chỉ cho
làm cho bài thuyết trình.
Ứng dụng: logic và dữ liệu nằm trên máy chủ. Công nghệ liên quan là
JDBC, XML, và SQL.
2.2 Kiến trúc ba lớp (tầng) của WBDB
Kiến trúc ba lớp chứa khách hàng, ứng dụng máy chủ và máy chủ dữ liệu.
Một WBDB hoàn chỉnh hệ thống đòi hỏi ba các thành phần cần thiết mặc dù họ

có thể đại diện cho các loại công nghệ.
Trong mô hình ba lớp của một cổng cơ sở dữ liệu, các thành phần khách
hàng là khách hàng và thư viện API, trong đó bao gồm các API phía máy khách.
Họ xác định định dạng và ý nghĩa của các yêu cầu rằng các ứng dụng khách
hàng có thể phát hành.
Máy chủ ứng dụng là thành phần sở hữu cơ chế biên dịch và lập bản đồ.
Nó biến đổi API khách hàng để các DBMS của máy chủ API, và ngược lại cho
các dữ liệu trả lại cho khách hàng. Các máy chủ thư viện API trên cơ sở dữ liệu
phía máy chủ là Server Data thành phần. Nó quản lý các dịch vụ cơ sở dữ liệu có
sẵn cho khách hàng. Sự thay đổi dịch vụ về chứng thực từ các DBMS.
Xử lý giao dịch màn hình mô hình là cũng là một kiến trúc ba lớp. Trong
bối cảnh này, ứng dụng khách hàng bao gồm giao diện người dùng chức năng,
chẳng hạn như logic màn hình, màn hình xử lý, xử lý đầu vào, và xác nhận một
số chức năng. Ứng dụng máy chủ cung cấp tất cả các chi tiết của dịch vụ ứng
dụng. Quản lý nguồn có thể cung cấp tất cả các tầng dịch vụ thấp hơn, chẳng
hạn như giao tiếp giữa cơ sở dữ liệu và các dịch vụ ứng dụng.
Các khách hàng / máy chủ mở rộng mô hình là một điển hình của kiến
trúc ba tầng. Trong mô hình này, khách hàng truy cập thông qua trình duyệt
Web. Trình duyệt web gửi yêu cầu tới Web Server. Web Server chuyển các yêu
cầu đến một Server cơ sở dữ liệu. Sau khi Server cơ sở dữ liệu xử lý các yêu
cầu, kết quả trả về cho trình duyệt Web của khách hàng.
Trong quá trình chuyển đổi, các trang Web Server có thể xử lý các kết quả
từ cơ sở dữ liệu. Trong MBDB, các yêu cầu của máy chủ MBDB để lấy dữ liệu
cần thiết. Các máy chủ thực thi bằng cách phát ra một loạt các truy vấn SQL.
MBDB thực hiện truy vấn và tạo ra các truy vấn địa phương theo các tính năng
khác nhau của việc tham gia cơ sở dữ liệu Server. Sau đó, các truy vấn địa
phương có thể được cấp cho các máy chủ cơ sở dữ liệu tương ứng có thể được
quản lý bởi các máy chủ DBMS.
Tuy nhiên, các máy chủ DBMS có thể được truy cập thông qua tất cả các
loại công nghệ truy cập cơ sở dữ liệu. MBDB thực hiện tích hợp các kết quả địa

phương nhận được từ tất cả các máy chủ cơ sở dữ liệu và cuối cùng trình bày
một kết quả tổng thể lên Web Server. Trong trường hợp này, MBDB xử lý tất cả
các hoạt động bao gồm cả dữ liệu định vị, interrelating, và tích hợp. Các Web
Server chỉ thực hiện gửi các yêu cầu từ khách hàng gần giống mô hình client /
server điển hình.
Tất cả các công nghệ có thể được sử dụng trong kiến trúc ba tầng theo yêu
cầu khác nhau của người sử dụng. Mô hình ba lớp là các mô hình cần thiết để
cấu trúc một WBDB.
2.3 Kiến trúc lai của WBDB
Có một số cách kết hợp khác nhau công nghệ vào Web hoặc một cơ sở dữ
liệu
tăng cường hiệu suất của WBDB. Lớp Application Server có chứa các Web
Server thành phần và các đại lý).
Trong một kịch bản dựa trên đại lý, khách hàng sẽ gửi một trong hai dữ
liệu hoặc dữ liệu và các chương trình trên Web Server kích hoạt các đại lý. Các
đại lý sau đó xử lý dữ liệu yêu cầu sử dụng riêng của mình các chương trình,
bằng cách sử dụng các chương trình nhận được. Sau khi hoàn thành việc xử lý
sơ bộ, các đại lý sẽ gửi dữ liệu của chương trình và kết quả cho Application
Server xử lý tiếp. Sau đó, các Web Server giao tiếp với cơ sở dữ liệu và cơ sở dữ
liệu Server kết thúc thao tác với cơ sở dữ liệu và chuyển kết quả cho Web
Server. Các Web Server sẽ trả lại kết quả sao cho khách hàng trực tiếp hoặc
thông qua các đại lý.
3. Web dựa trên cơ sở dữ liệu Access Technologies
WBDBs xây dựng liên quan đến nhiều công nghệ, chẳng hạn như cơ sở
dữ liệu, Web server, trình duyệt Web, Application Server, SQL, CGI, JAVA và
như vậy. Một số công nghệ cho giao diện, những người khác có thể đối phó với
cơ sở dữ liệu truy cập, hoặc kết hợp tất cả mọi thứ lại với nhau, hoặc chỉ ứng
dụng. Hiện tại công nghệ được sử dụng trong WBDB có thể được phân loại như
sau:
- Web truyền thống (thế hệ 1) - HTML, HTTP, và CGI;

- Web tương tác (thế hệ 2) - JavaScript, Server-side API;
- Web dựa trên Java (thế hệ 3) - Java, JDBC, Servlet
- XML, Khách hàng / Đại lý điện thoại di động / Server (a thế hệ mới).
Do thị trường rất lớn cho WBDBs, có rất nhiều công nghệ phát triển để
đáp ứng yêu cầu thực tế: CORBA, RMI, DCOM / Net Remoting, JavaScript,
Server-side API WBDB Mặc dù có lợi thế khuôn khổ dựa trên CGI (Ngôn ngữ
đơn giản, độc lập, Web Server độc lập, chấp nhận rộng rãi), phương pháp CGI
tiếp cận một số vấn đề (quy trình mới cho mỗi kịch bản CGI, Web server đăng
nhập và đăng xuất cho tất cả các truy vấn đệ trình, dẫn đến lãng phí tài nguyên
nghiêm trọng và làm cho thông tin liên lạc giữa khách hàng và máy chủ rất
chậm).
Netscape Server API (NSAPI), Microsoft Server Internet API (ISAPI) và
JavaScript là lựa chọn thay thế cho CGI. Thay thế CGI với server-side
JavaScript
và thêm client-side JavaScript đáng kể làm thay đổi lĩnh vực thiết kế ứng dụng.
JavaScript là một ngôn ngữ kịch bản nhúng trong một trang HTML. Nó
có thể đáp ứng cho người sử dụng các sự kiện như cú nhấp chuột, hình thức đầu
vào, trang chuyển hướng, và xác nhận và cảnh báo, tính toán, trao đổi hình ảnh
và kiểm soát dữ liệu.
Thành phần GUI có thể được thực thi. Cơ sở dữ liệu tìm kiếm cũng có thể
được mô phỏng trong clientside JavaScript. JavaScript chạy trong Web Server
xử lý một số chức năng của Trình duyệt web. Không giống như JavaScript phía
máy khách, JavaScript phía máy chủ có quyền truy cập vào tài nguyên máy chủ,
chương trình và cơ sở dữ liệu bên ngoài.
Các khách hàng và server-side JavaScript khuôn khổ của WBDB được
hiển thị trong hình.
So với khuôn khổ dựa trên CGI, phương pháp tiếp cận JavaScript / API
hoạt động hiệu quả hơn. Tốc độ vận chuyển nhanh hơn phía máy chủ thời gian
đáp ứng cho phép thiết kế giao diện người dùng Web mà các lập trình viên thậm
chí sẽ không bao giờ xem xét tới CGI. Cùng một ngôn ngữ trên máy khách và

máy chủ thông tin liên lạc và việc lập trình dễ dàng hơn.
Ngoài ra còn có một số thiếu sót do giới hạn các tính năng giao diện đồ
họa, giao diện người dùng vẫn còn HTML. Nó phải chạy bên trong trình duyệt,
đòi hỏi việc sử dụng các khung hình để duy trì một giao diện người dùng trực
quan bối cảnh liên tục trong khi cập nhật một điều khiển giao diện bằng cách sử
dụng giá trị từ một cơ sở dữ liệu. Nó có thể không gửi tới người sử dụng giao
diện tin nhắn không mong muốn từ máy chủ.
TÀI LIỆU THAM KHẢO
I. TÀI LIỆU:
[1] G. Coulouris, J. Dollimore, T. Kindberg - Distributed Systems. Concepts and
Design,
Addison-Wesley, 2001
[2] S. Hariri, M. Parashar - Tools and Environments for Parallel and Distributed
Computing, John Wiley & Sons, 2004
[3] W. Jia, W. Zhou - Distributed Network Systems. From Concepts to
Implementations, Springer, 2005
[4] A.S. Tanenbaum, M. van Steen - Distributed Systems. Principles and Paradigms,
Prentice Hall, 2002.
II. MỘT SỐ BÀI BÁO:
[1] Web-Based Database Distributed Systems Assist. Alexandru Dan CĂPRIŢĂ,
Assoc. Prof. Vasile MAZILESCU, PhD Department of Accounting and Economic
Informatics, University “Dunărea de Jos” Galaţi
[2] An Active Web-based Distributed Database System for E-Commerce - Hiroshi
Ishikawa Manabu Ohta - Tokyo Metropolitan University, Dept. of Electronics &
Information Eng.
[3] A Web services-based distributed system with browser-client architecture to
promote tele-audiology assessment. Yao J, Givens GD, Wan Y. - Department of
Engineering, College of Technology and Computer Science, East Carolina University,
Greenville, North Carolina 27858, USA.
ĐƯỜNG LINK TÀI LIỆU

I. TÀI LIỆU:
[1]
/>sa=t&rct=j&q=&esrc=s&source=web&cd=6&ved=0CF8QFjAF&url=http%3A%2F
%2Fdl.compist.ir%2Feducational%2Fdistributed-systems
%2FDistributed_Systems__Concepts_and_Design__5th_Edition_.pdf&ei=AEPyUKaI
Icm2kAXci4GAAQ&usg=AFQjCNH25_AwmLyf5lN1JWAjuRVoPHBQhA&sig2=1
mCXK_iIBxBE1LvtW5JE-A&bvm=bv.1357700187,d.aGc
[2]
/>sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCwQFjAA&url=ftp%3A%2F
%2Fftp.uar.net%2Fpub%2Fe-books%2Fwiley-interscience%2520-%2520tools
%2520and%2520environments%2520for%2520parallel%2520and
%2520distributed.pdf&ei=R0PyULOTBM-
alQX564HgCQ&usg=AFQjCNEl4w_j1tiMCqn-
bwN8TjUhX6kFkA&sig2=AAEYdE07hDhJT6DMigZU2Q&bvm=bv.1357700187,d.
aGc
[3]
/>sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CDkQFjAB&url=http%3A%2F
%2Fwww.economyinformatics.ase.ro%2Fcontent%2FEN5%2FCAPRITA%2520DAN
%2520.pdf&ei=dUTyULXmKYyPlQWk-
IDwBA&usg=AFQjCNGD7enmPomE9yRkXvT2SW4psQ9ilQ&sig2=cNun7PTt1rUf
S9J4gtgsog&bvm=bv.1357700187,d.aGc
[4]
/>sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CDgQFjAB&url=http%3A%2F
%2Fnet.pku.edu.cn%2F~course%2Fcs501%2F2010%2Fresource%2F2006-Book-
distributed%2520systems%2520principles%2520and%2520paradigms%25202nd
%2520edition.pdf&ei=rUTyUJKeN4PCkwW81YDoCQ&usg=AFQjCNFhh89p1T7X
RdgzY19UdOn4VPIQ2g&sig2=00eLzK13cO0-MsEbl6-
HTQ&bvm=bv.1357700187,d.aGc
II. MỘT SỐ BÀI BÁO:
[1]

/>sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCwQFjAA&url=http%3A%2F
%2Fwww.economyinformatics.ase.ro%2Fcontent%2FEN5%2FCAPRITA%2520DAN
%2520.pdf&ei=-
kXyUOyBLImKkwXwq4HYCw&usg=AFQjCNGD7enmPomE9yRkXvT2SW4psQ9i
lQ&sig2=Kq4N6OHQPM3aeHf2DuHaSQ
[2]
/>sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CDUQFjAB&url=http%3A%2F
%2Fwww.dcs.bbk.ac.uk%2FwebDyn%2FwebDynPapers
%2Fishikawa.pdf&ei=HUbyUMbwFo6nkAWlyYEQ&usg=AFQjCNEXYtGxuELMA
_pQwUn23X4yCl6iTQ&sig2=GokBviOdwO70sRv2dSWHGA
[3]
/>sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCwQFjAA&url=http%3A%2F
%2Fcv-aps.bvs.br%2Ftiki-download_file.php%3FfileId
%3D1102&ei=PUbyUKuKJorFkQXqqoDYAQ&usg=AFQjCNGZDBaBKlvcT_B4u7
y4p7u71bi4uA&sig2=4s5doL-EtTHex9UDtfFNaQ

×