Mô hình tập trung.Mô hình File Server.Mô hình Client Server( mô hình khách chủ)WWW VÀ MÔ HÌNH CLIENTSERVERCÁC MÔ HÌNH XỬ LÝ CỦA HỆ THỐNG CLIENTSERVERHỆ THỐNG CLIENTSERVER ĐA TẦNG (MULTI TIER)MÔ HÌNH MỘT PHÍAMỘT SỐ GIẢI PHÁP CÔNG NGHỆ KHÁC
Trang 1BÁO CÁO BÀI TẬP LỚN
Môn : Kiến trúc máy tính
Đề tài: Tìm hiểu nguyên lý xử lý tính toán mô hình
Trang 2Giới thiệu
Mô hình client-server là một mô hình nổi tiếng trong mạng máy
tính, được áp dụng rất rộng rãi và là mô hình của mọi trang web hiện
có Ý tưởng của mô hình này là máy con (đóng vài trò là máy khách)gửi một yêu cầu (request) để máy chủ (đóng vai trò người cung ứngdịch vụ), máy chủ sẽ xử lý và trả kết quả về cho máy khách
Client/Server là mô hình tổng quát nhất, trên thực tế thì mộtserver 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ư databaseserver vì bản thân nó không thể xử lý yêu cầu này được Máy server
có thể thi hành các nhiệm vụ đơn giản hoặc phức tạp Ví dụ như mộtmáy chủ trả lời thời gian hiện tại trong ngày, khi một máy client yêucầu lấy thông tin về thời gian nó sẽ phải gửi một yêu cầu theo một tiêuchuẩn do server định ra, nếu yêu cầu được chấp nhận thì máy server
sẽ trả về thông tin mà client yêu cầu Có rất nhiều các dịch vụ servertrên mạng nhưng nó đều hoạt động theo nguyên lý là nhận các yêucầu từ client sau đó xử lý và trả kết quả cho client yêu cầu Thôngthường chương trình server và client được thi hành trên hai máy khácnhau Cho dù lúc nào server cũng ở trạng thái sẵn sàng chờ nhận yêucầu từ client nhưng trên thực tế một tiến trình liên tác qua lại(interaction) giữa client và server lại bắt đầu ở phía client, khi mà clientgửi tín hiệu yêu cầu tới server Các chương trình server thường đềuthi hành ở mức ứng dụng (tầng ứng dụng của mạng) Sự thuận lợicủa phương pháp này là nó có thể làm việc trên bất cứ một mạng máytính nào có hỗ trợ giao thức truyền thông chuẩn cụ thể ở đây là giaothức TCP/IP Với các giao thức chuẩn này cũng giúp cho các nhà sảnxuất có thể tích hợp nhiều sản phẩm khác nhau của họ lên mạng màkhông gặp phải khó khăn gì Với các chuẩn này thì các chương trìnhserver cho một dịch vụ nào đấy có thể thi hành trên một hệ thống chia
sẻ thời gian (timesharing system) với nhiều chương trình và dịch vụkhác hoặc nó có thể chạy trên chính một máy tính các nhân bìnhthường Có thể có nhiều chương server cùng làm một dịch vụ, chúng
Trang 3khác nhau trên mạng Ưu và nhược điểm chính Có thể nói rằng với
mô hình client/server thì mọi thứ dường như đều nằm trên bàn củangười sử dụng, nó có thể truy cập dữ liệu từ xa (bao gồm các côngviệc như gửi và nhận file, tìm kiếm thông tin, ) với nhiều dịch vụ đadạng mà mô hình cũ không thể làm được Mô hình client/server cungcấp một nền tảng lý tưởng cho phép tích hợp các kỹ thuật hiện đạinhư mô hình thiết kế hướng đối tượng, hệ chuyên gia, hệ thông tin địa
lý (GIS) Một trong những vấn đề nảy sinh trong mô hình này đó làtính an toàn và bảo mật thông tin trên mạng Do phải trao đổi dữ liệugiữa 2 máy ở 2 khu vực khác nhau cho nên dễ dàng xảy ra hiệntượng thông tin truyền trên mạng bị lộ
Client :Trong mô hình client/server, người ta còn định nghĩa cụ thể
cho một máy client là một máy trạm mà chỉ được sử dụng bởi 1 ngườidùng với để muốn thể hiện tính độc lập cho nó Máy client có thể sửdụng các hệ điều hành bình thường như Win9x, DOS, OS/2 Bảnthân mỗi một client cũng đã được tích hợp nhiều chức năng trên hệđiều hành mà nó chạy, nhưng khi được nối vào một mạng LAN, WANtheo mô hình client/server thì nó còn có thể sử dụng thêm các chứcnăng do hệ điều hành mạng (NOS) cung cấp với nhiều dịch vụ khácnhau (cụ thể là các dịch vụ do các server trên mạng này cung cấp), ví
dụ như nó có thể yêu cầu lấy dữ liệu từ một server hay gửi dữ liệu lênserver đó Thực tế trong các ứng dụng của mô hình client/server, cácchức năng hoạt động chính là sự kết hợp giữa client và server với sựchia sẻ tài nguyên, dữ liệu trên cả 2 máy Vai trò của client Trong môhình client/server, client được coi như là người sử dụng các dịch vụtrên mạng do một hoặc nhiều máy chủ cung cấp và server được coinhư là người cung cấp dịch vụ để trả lời các yêu cầu của các clients.Điều quan trọng là phải hiểu được vai trò hoạt động của nó trong một
mô hình cụ thể, một máy client trong mô hình này lại có thể là servertrong một mô hình khác Ví dụ cụ thể như một máy trạm làm việc nhưmột client bình thường trong mạng LAN nhưng đồng thời nó có thểđóng vai trò như một máy in chủ (printer server) cung cấp dịch vụ in
ấn từ xa cho nhiều người khác (clients) sử dụng Client được hiểu như
là bề nổi của các dịch vụ trên mạng, nếu có thông tin vào hoặc ra thìchúng sẽ được hiển thị trên máy client
Server: Server còn được định nghĩa như là một máy tính nhiều
người sử dụng (multiuser computer) Vì một server phải quản lý nhiều
Trang 4thống Các ứng dụng chạy trên server phải được tách rời nhau để mộtlỗi của ứng dụng này khô ng làm hỏng ứng dụng khác Tính đa nhiệmđảm bảo một tiến trình không sử dụng toàn bộ tài nguyên hệ thống.Vai trò của server Như chúng ta đã bàn ở trên, server như là một nhàcung cấp dịch vụ cho các clients yêu cầu tới khi cần, các dịch vụ như
cơ sở dữ liệu, in ấn, truyền file, hệ thống Các ứng dụng server cungcấp các dịch vụ mang tính chức năng để hỗ trợ cho các hoạt độngtrên các máy clients có hiệu quả hơn Sự hỗ trợ của các dịch vụ này
có thể là toàn bộ hoặc chỉ một phần thông qua IPC Để đảm bảo tính
an toàn trên mạng cho nên server này còn có vai trò như là một nhàquản lý toàn bộ quyền truy cập dữ liệu của các máy clients, nói cáchkhác đó là vai trò quản trị mạng Có rất nhiều cách thức hiện naynhằm quản trị có hiệu quả, một trong những cách đang được sử dụng
đó là dùng tên Login và mật khẩu
Trang 5Mục lục
I MÔ HÌNH TẬP TRUNG 6
II MÔ HÌNH FILE SERVER (MÁY PHỤC VỤ TỆP) 7
III.MÔ HÌNH CLIENT/SERVER (KHÁCH CHỦ) 9
IV WWW VÀ MÔ HÌNH CLIENT/SERVER 12
V CÁC MÔ HÌNH XỬ LÝ CỦA HỆ THỐNG CLIENT/SERVER 14
1 Mô hình đồng thực hiện 14
2 Mô hình lưu trữ dữ liệu tại Server 16
VI HỆ THỐNG CLIENT/SERVER ĐA TẦNG (MULTI TIER) 17
VII MÔ HÌNH MỘT PHÍA 19
1 Mô hình một phía 19
2 Triển khai Mô hình một phía 21
a Thiết kế giao diện người máy 22
b Xây dựng các module xử lý dữ liệu 28
c Xử lý form 31
d Một ví dụ về lập trình với cơ sở dữ liệu 33
e Lập trình từ xa và tính độc lập Platform 36
3 Các ưu điểm của Mô hình một phía 36
VIII MỘT SỐ GIẢI PHÁP CÔNG NGHỆ KHÁC 37
1 ASP 37
2 Domino 38
3 Netdata 38
4 Giải pháp của oracle 38
Trang 6I MÔ HÌNH TẬP TRUNG
Trong mô hình này, tồn tại một máy tính trung tâm (central computer),các máy thiết bị đầu cuối không thông minh (dumb terminal) và các đường(cable) truyền thông (transmission line) Máy tính trung tâm thực hiện lưu trữ
dữ liệu; các chương trình xử lý dữ liệu và xử lý dữ liệu Các thiết bị đầu cuốikhông thông minh đơn giản là thực hiện nhận dữ liệu đầu vào và trình diễn
kết quả Thông tin trên đường truyền là các xâu truy vấn và trả lời Sở dĩ cácthiết bị đầu cuối ở đây được gọi là không thông minh vì các thiết bị nàythường có cấu hình yếu (bộ nhớ dung lượng thấp, không ổ cứng, …), không
có khả năng xử lý dữ liệu mà chỉ là nhận các yêu cầu đơn giản và hiển thị cáckết quả Một ví dụ cho mô hình này là mô hình Terminal Server với máy tínhtrung tâm chạy hệ điều hành WinNT/2000 hoặc Linux và chương trìnhTerminal Server, còn các thiết bị cuối là các máy tính cá nhân yếu khởi độngbằng RomBoot thay cho đĩa mềm
Mô hình tập trung có các đặc điểm sau đây:
Có máy tính trung tâm và các thiết bị đầu cuối không thông minh
Các trạm đầu cuối giao tiếp với máy tính trung tâm và giao tiếp vớinhau (thông qua máy tính trung tâm) qua các đường truyền dùng riêng,tốc độ thấp (hàng chục Kbps)
Lưu trữ dữ liệu; lưu trữ chương trình và xử lý dữ liệu tập trung tại máy
Central computer
Dumb terminal
Transmission line
Hình 1: Mô hình tập trung
Trang 7 Thuận lợi cho bảo trì, phát triển do kiến trúc phần cứng đơn giản; lưutrữ, xử lý dữ liệu tập trung trên máy tính trung tâm nên các chươngtrình chỉ cần viết chạy trên máy tính này là đủ; yêu cầu (về mặt chứcnăng) đối với thiết bị đầu cuối đơn giản; đường truyền dùng riêng dễthay đổi, lắp đặt.
Không đòi hỏi đường truyền có tốc độ cao
Nhược điểm:
Khả năng, sức mạnh của hệ thống hoàn toàn phụ thuộc vào khả năngcủa máy tính trung tâm do tất cả việc lưu trữ, xử lý dữ liệu đều thựchiện tập trung tại đây
Giá thành của hệ thống quá cao do cần phải có một máy tính trung tâm
có đủ sức mạnh và hệ thống các đường truyền dùng riêng Tuy nhiên,hiện nay tiến bộ của công nghệ (phần cứng) và một số phần mềm miễnphí như Linux cho phép giảm giá thành của hệ thống
II MÔ HÌNH FILE SERVER (MÁY PHỤC VỤ TỆP)
Trong mô hình này tồn tại máy phục vụ tệp (file Server); các máy trạmlàm việc (workstation) chia sẻ chung đường truyền thông Máy phục vụ tệplưu trữ dữ liệu, các chương trình xử lý dữ liệu; máy trạm thực hiện xử lý dữliệu
Mỗi khi có yêu cầu từ một trạm làm việc, toàn bộ dữ liệu và chươngtrình tương ứng được sao chép từ máy phục vụ, gửi qua đường truyền củamạng tới bộ nhớ của trạm làm việc, quá trình tính toán và xử lý dữ liệu đượcthực hiện trên các trạm làm việc, sau đó dữ liệu được cập nhật trở lại máyphục vụ Tổng cộng dung lượng của dữ liệu và chương trình thường rất lớn vàdung lượng truyền thông trên mạng tăng đột ngột khi nhiều trạm làm việccùng có nhu cầu gọi tới các chương trình xử lý dữ liệu lớn
Mặt khác lại có những sự khác nhau về cấu trúc vật lý cũng như hệ điềuhành của các hệ thống máy tính và mạng máy tính khác nhau, làm cho mộtchương trình được xây dựng cho trạm làm việc này thì lại không thể sử dụngcho trạm làm việc khác
Trang 8Đặc điểm của mô hình file Server:
Máy phục vụ về cơ bản là phục vụ tệp
Máy trạm làm việc thông minh (có khả năng xử lý dữ liệu)
Đường truyền chia sẻ chung tốc độ cao
Lưu trữ dữ liệu và chương trình là tập trung
Xử lý dữ liệu phân tán tại các trạm làm việc
Thông tin trên đường truyền là các chương trình và toàn bộ cơ sở dữliệu
Ưu điểm:
Khai thác được sức mạnh của nhiều bộ xử lý từ các trạm làm việc
Chương trình thực thi được trong môi trường này là đơn giản do chỉcần viết một lần và lưu trữ tại máy phục vụ tệp
File Server
Workstation
Hình 2: Mô hình máy phục vụ tệp
Trang 9III MÔ HÌNH CLIENT/SERVER (KHÁCH CHỦ)
Những mô hình LAN trong thời kỳ đầu (tập trung và máy phục vụ tệp)được xây dựng chủ yếu dựa trên phương thức chia xẻ tài nguyên dùng chung:chia xẻ sử dụng đường truyền theo thời gian, chia xẻ các tài nguyên vật lýkhác và dùng chung tài nguyên thông tin là dữ liệu và các chương trình xử lýchúng trên một hoặc nhiều máy phục vụ (Server) của mạng
Mô hình phần mềm Client/Server là mô hình giải pháp phần mềm choviệc khắc phục tình trạng quá tải trên mạng và vượt qua những ngăn cách về
sự khác nhau trong cấu trúc vật lý cũng như hệ điều hành của các hệ thốngmáy tính khác nhau trên mạng
Mỗi phần mềm xây dựng theo mô hình Client/Server sẽ được chia làmhai phần: phần hoạt động trên máy phục vụ gọi là phần phía Server và phầnhoạt động trên trạm làm việc gọi là phần phía Client Với mô hình này cáctrạm làm việc cũng được gọi là các Client (hay máy Client) còn các máy phục
vụ gọi là các Server Nhiệm vụ của mỗi phần được quy định như sau:
Phần phía Server quản lý các giao tiếp môi trường bên ngoài tại Server
và với các Client, tiếp nhận các yêu cầu dưới dạng các xâu ký tự (querystring), phân tích các query string, xử lý dữ liệu và gửi kết quả trả lời
về phía các Client
Đường truyền dùng chung
Xâu truy vấn
Server computer
Client computer
Hình 3: Mô hình Client/Server
Trang 10 Phần phía Client tổ chức giao tiếp với người dùng, với môi trường bênngoài tại trạm làm việc và với phía Server, tiếp nhận yêu cầu của ngườidùng, thành lập các query string gửi về phía Server, tiếp nhận kết quả
và tổ chức trình diễn chúng
Đặc điểm của mô hình Client/Server:
Máy phục vụ và máy khách thông minh (máy phục vụ trong mô hìnhnày không phải chỉ đơn thuần là phục vụ tệp mà gồm cả xử lý dữliệu)
Các máy chia sẻ chung đường truyền thông tốc độ cao (hàng nghìnKbps)
Mỗi phần mềm ứng dụng được xây dựng thành 2 phần: chương trìnhphục vụ và chương trình khách
Lưu trữ dữ liệu tập trung tại máy phục vụ
Xử lý dữ liệu phân tán trên các máy khách
Thông tin trên đường truyền là các xâu truy vấn và trả lời
Máy Server Môi trường Server
Người dùng
query string
Kết quả xử lýdữ liệu
Hình 4: Mô hình phần mềm Client/Server
Máy Client
Trang 11- Không còn các chương trình phải gửi đi trên đường truyền từ cácmáy phục vụ tới các trạm làm việc.
- Từ phía các trạm làm việc, không còn phải cập nhật toàn bộ dữliệu sau khi đã sử lý về máy phục vụ
Với mô hình này dễ dàng tổ chức vượt qua sự khác biệt về cấu trúcvật lý và hệ điều hành giữa các hệ thống máy tính khác nhau vì giaotiếp thông tin giữa chúng là các dữ liệu dạng ASCII text
Tăng hiệu suất hoạt động của hệ thống
Chương trình khách Quản lý Cán bộ Chương trình khách Quản lý Tài vụ Chương trình khách Quản lý Công văn
Hình 5 : Ví dụ về một số chương trình quản lý xây dựng trên mô hình Client/Server
Trang 12Nhược điểm:
Ưu thế của phần mềm Client/Server được thực hiện qua chính cácđặc điểm ở trên Nếu một phần mềm được xây dựng từ hai phíaClient và Server nhưng lại thực hiện việc gửi các chương trình tínhtoán hay gửi dữ liệu dạng nguyên gốc từ phía Server về Client thì ýnghĩa hiệu quả của Client/Server không còn nữa
Mô hình Client/ Server cũng bộc lộ những nhược điểm do nhữngkhó khăn trong việc xây dựng và phát triển các phần mềm theo môhình của nó Người lập trình phải tổ chức quản lý được các giao tiếpgiữa hai phần của chương trình và giao tiếp với môi trường bênngoài tại cả hai phía Server và phía Client Công tác bảo trì và pháttriển phải được thực hiện cả từ hai phía Vấn đề cũng trở nên phứctạp hơn đối với mạng có nhiều Client phân bố trên diện rộng
IV WWW VÀ MÔ HÌNH CLIENT/SERVER
WWW là một dịch vụ cung cấp siêu văn bản trên Internet WWW đượcxây dựng theo mô hình Client/Server Phần phía Server được gọi tên là HTTPServer hay Web Server Phần phía Client gọi là Web Browser
HTTP Server làm việc trên máy Server, quản lý các dữ liệu siêu văn bản,các giao tiếp với môi trường bên ngoài tại Server và với các Client Nó thựchiện việc giao tiếp với phần phía Client (các Web Browser) thông qua mộtgiao thức truyền thông trên nền TCP/IP gọi là HyperText Transfer Protocol(HTTP) vì vậy mà có tên gọi HTTP Server
Các Web Browser tổ chức môi trường giao tiếp với người dùng, với môitrường bên ngoài tại trạm Client và với HTTP Server Giao tiếp với HTTPServer cũng được thực hiện thông qua HTTP Web Browser tiếp nhận yêu cầucủa người dùng, bao gồm dữ liệu và thông tin địa chỉ URL và chuyển về phíaServer Khi nhận được thông tin trả lời Web Browser thông dịch kết quả và tổchức trình diễn chúng
Trang 13Có những chuẩn thống nhất đối với HTTP Server và Web Browser Vì vậymột Web Browser có thể giao tiếp được với nhiều HTTP Server khác nhau tạikhắp nơi trên Internet Trên thực tế, có rất nhiều sản phẩm HTTP Server vàWeb Browser (gọi tắt là các sản phẩm WWW) được viết bởi các hãng phầnmềm khác nhau hay các trung tâm nghiên cứu tại các trường đại học cũng nhưcác viện nghiên cứu Và các sản phẩm này một mặt tuân theo những chuẩnquy định, mặt khác lại phát triển các mở rộng riêng của mình, vì vậy khôngthật sự có được sự tương thích hoàn hảo giữa một Web Browser với nhiềuHTTP Server và ngược lại.
Có hai chuẩn mà tất cả các sản phẩm WWW phải tuân thủ tuyệt đốichính xác đó là HTTP và CGI CGI là bộ giao tiếp cổng chung (CommonGateway Interface) có nhiệm vụ tổ chức giao tiếp giữa HTTP Server và môitrường bên ngoài tại Server
Ngoài ra các sản phẩm WWW cũng phải tuân thủ các chuẩn về siêu vănbản hay nói chính xác hơn là ngôn ngữ đánh dấu siêu văn bản (HyperTextMarkup Language - HTML) - một ngôn ngữ định chuẩn việc xây dựng cácsiêu văn bản HTML đã có đến version 4 và một sản phẩm WWW tuân theochuẩn HTML version 3 sẽ không có khả năng làm việc chuẩn xác với nhữngsiêu văn bản được xây dựng dùng các mở rộng của chuẩn HTML version 3
Môi trường Server
HTTP Server
Môi trường Client
Web Browser
Trang 14V CÁC MÔ HÌNH XỬ LÝ CỦA HỆ THỐNG CLIENT/SERVER
Các ứng dụng khách chủ (Client/Server application) truy xuất cơ sở dữliệu gồm các thành phần sau đây:
Thành phần truy nhập cơ sở dữ liệu (Data Access): Thực hiện các
truy xuất vào cơ sở dữ liệu - lọc và cập nhạt dữ liệu
Thành phần xử lý ứng dụng (Application Process): Thực hiện
phân tích các kết quả giao tiếp, thực hiện các tính toán ứng dụng
Thành phần điều khiển hiển thị (Display control): Thực hiện tổ
chức giao tiếp nghười máy
Người ta thường phân loại các ứng dụng khách chủ theo các phân bố cácthành phần xử lý ứng dụng (application processing) Theo cách phân loại nàythì các ứng dụng khách chủ được chia làm 2 loại:
Mô hình đồng thực hiện (Cooperative prcessing mode): các thành
phần xử lý ứng dụng được phân bố ở cả Client và Server Các ứngdụng khách gọi các ứng dụng phục vụ
Mô hình lưu trữ dữ liệu tại Server (Data Server): Các thành phần
xử lý ứng dụng phân bố ở Client Phía Server chỉ chứa thành phầntruy cập dữ liệu (Data Access) sẽ được gọi từ các ứng dụng khách
Display Control
Hình 7: Các thành phần của một ứng dụng truy xuất cơ sở dữ liệu
Trang 15Phía Client còn có thêm thành phần Display control để tổ chức trình diễnkết quả cho người dùng.
Với lập trình web, thể hiện cho mô hình này là ngôn ngữ script phía
Process Division Type: Các thành phần Data Access tập trung tại Server
Trong mô hình này, thành phần Data Access chỉ phân bố tập trung ởServer nên mọi tương tác với dữ liệu của ứng dụng phía Client đều phải thôngqua ứng dụng phía Server vì Client không có thành phần Data Access
Distribute Data Type: Các thành phần Data Access phân bố ở cả Client
và Server
Xem hình 8: Mô hình đồng thực hiện
Operational Server Type: Các thành phần Data Access tập trung tại
Trang 16Ở đây, phía Server chỉ có thành phần Application Process, mọi tương tác
của ứng dụng phía Server với dữ liệu phải thực hiện thông qua ứng dụng phíaClient
2 Mô hình lưu trữ dữ liệu tại Server
Tương tự như trong mô hình đồng thực hiện nhưng thành phần xử lý ứngdụng chỉ tập trung phân bố ở Client
Trong mô hình này cũng dựa vào sự phân bố của thành phần Data
Access, có thể phân loại nhỏ hơn như sau:
Remote Database Type: Các thành phần Data Access phân bố tập trung
Trang 17Trong mô hình này, mọi tương tác với dữ liệu của ứng dụng phia sClientđều phải thông qua ứng dụng phía Server.
Distribute Data Type: Các thành phần Data Access phân bố ở cả Client
và Server
Xem hình 11: Mô hình lưu trữ dữ liệu tại Server
VI HỆ THỐNG CLIENT/SERVER ĐA TẦNG (MULTI TIER)
Một cách điển hình các ứng dụng tương tác khách chủ (Client/Serverapplication) được phân thành 2 loại: hoặc là ứng dụng khách hoặc là ứngdụng phục vụ Ứng dụng khách yêu cầu dịch vụ và và dữ liệu từ Server vàứng dụng phục vụ sẽ phản hồi (phục vụ) các yêu cầu của ứng dụng khách.Sớm nhất là các ứng dụng 2 lớp (2 tier) được phát triển để truy cập vào các cơ
sở dữ liệu lớn; cùng thi hành các quy tắc xử lý dữ liệu với tổ chức giao tiếpvới người dùng trong ứng dụng khách Các công việc của Server đơn giản chỉ
là xử lý càng nhiều yêu cầu về lưu trữ và phục hồi dữ liệu càng tốt
Các ứng dụng 2 lớp thực hiện nhiều chức năng của một ứng dụng độclập: tổ chức giao tiếp với người dùng; tập hợp và xử lý thông tin người dùngnhập vào; thực hiện các xử lý được yêu cầu; thông báo về trạng thái của yêucầu Hàng loạt các lệnh có thể lặp lại nhiều lần khi cần thiết Do Server chỉcung cấp việc truy cập đến cơ sở dữ liệu nên Client phải sử dụng tài nguyêncủa nó để thực hiện hầu hết các thao tác xử lý Ứng dụng khách phải chứathông tin về nơi đặt cơ sở dữ liệu và cách thức tổ chức của cơ sở dữ liệu đó.Khi nhận được dữ liệu Client phải phản hồi lại và tổ chức trình diễn chongười dùng
Mặc dù tính dễ dàng và mềm dẻo của các sản phẩm 2 lớp vẫn tiếp tụcđược sử dụng để phát triển các ứng dụng thương mại nhỏ, nhưng nhu cầutrong việc truy cập cơ sở dữ liệu nhanh và thời hạn phát triển cần phải nhanhchóng đã thúc đẩy các nhà phát triển ứng dụng trong môi trường Client/Servertìm kiếm một cách thức mới trong việc xây dựng các ứng dụng phân tán
Trang 18Một tiếp cận khác khi thiết kế ứng dụng trong môi trường Client/Server
là phân chia công việc tính toán cho cả hai phía Client (khách) và Server (máyphục vụ) Theo quan điểm về mặt chức năng, hầu hết các ứng dụng đều phảithực hiện 3 nhóm công việc chính: Tập hợp thông tin người dùng nhập vào;lưu trữ các thông tin đó như là dữ liệu; xử lý dữ liệu đã lưu trữ bằng cách thihành các thủ tục đã thiết kế cho các thao tác xử lý Các công việc trên có thểđược nhóm vào 3 hay nhiều hơn 3 tầng và được minh họa trong hình dướiđây:
Client tier (Tầng ở phía Client)
Tầng này có chức năng trình diễn hay giao tiếp với người dùng Đây làtầng cao nhất của kiến trúc, người dùng có thể nhập dữ liệu, xem kết quả trả
về và tương tác với tầng dưới Trên web, trình duyệt sẽ thi hành các chứcnăng tổ chức giao tiếp với người dùng, còn trong các ứng dụng không trênnền web thì Client tier là một ứmg dụng độc lập, được biên dịch từ đầu đếncuối
Middle tier (Tầng giữa)
Tầng này là các thành phần đóng gói một chức năng nào đó của hệthống Thành phần ở đây có thể là một tác vụ đơn giản hay một phần của một
Hình 13: Mô hình đa tầng (multi tier) và mô hình 3 tầng (3 tier)
Trang 19Là một hệ quản trị cơ sở dữ liệu như SQL Server, một hệ quản trị cơ sở
dữ liệu không có cấu trúc như Microsoft Exchange hay hệ xử lý giao dịch nhưTransaction service hoặc Message Queuing Một ứng dụng đơn giản cũng cóthể dùng kết hợp một hoặc nhiều sản phẩm của các nhà cung cấp dữ liệu.Tầng ứng dụng không tương ứng với vị trí vật lý trên mạng Ví dụ tầnggiữa và tầng thứ 3 có thể cùng tồn tại trên cùng một Server chạy đồng thời IIS
và SQL Server hoặc chúng cũng có thể tồn tại trên các Server riêng biệt
Việc phân tách ứng dụng vào các tầng để phân lập phạm vi chính củatừng chức năng Chức năng trình diễn độc lập với chức năng ở tầng giữa Việcthiết kế ứng dụng theo cách thức này đạt được sự cân bằng giữa các yếu tố.Cách thức này đòi hỏi ít kinh nghiệm thiết kế ban đầu, đồng thời giảm đáng
kể chi phí bảo trì, tăng tính mềm dẻo về mặt chức năng của ứng dụng
Sự phát triển mạnh mẽ của Internet là một động cơ thúc đẩy quan trọngcho các tổ chức sử dụng kiến trúc đa tầng (n tier) trong sản phẩm của họ Tuynhiên, các tổ chức này vẫn phải đối mặt với nhiều thách thức Họ có thểchiếm lĩnh được những tiến bộ của các công nghệ mới bằng cách nào trongkhi phải duy trì các đầu tư đã có về con người, ứng dụng và dữ liệu Bằngcách nào họ có thể xây dựng các giải pháp tính toán động, dễ ràng tùy biến?Bằng cách nào họ có thể giảm chi phí tính toán trong khi môi trường tính toánngày càng phức tạp hơn Một giải pháp ở đây là sử dụng các ứng dụnginternet phân tán (Distributed interNet Applications -DNA) của MicrosoftWindows
VII MÔ HÌNH MỘT PHÍA
Với một intranet thì WWW được xem là phương thức chuẩn thống nhất
để tổ chức khai thác thông tin cho người dùng cuối
Vấn đề được đặt ra là cần mô tả tường minh một hay những mô hình choviệc tổ chức khai thác thông tin trên mạng, nói cụ thể hơn là mô hình xâydựng các phần mềm ứng dụng trên môi trường Internet nói chung và và cácIntranet nói riêng Phần này sẽ phát biểu mô hình một phía và cách thức triểnkhai
1 Mô hình một phía
Mô hình một phía là mô hình xây dựng các phần mềm client-server trên