Web client
trong
hệ thống
thông tin
đa lớp

  |  

Hiện nay, các hệ thống thông tin đa lớp (Multi-tier Information systems) được ứng dụng rộng rãi trong nhiều tổ chức kinh doanh, thương mại và công nghiệp lớn trên thế giới: đó là những ngân hàng, công ty viễn thông, tổ chức kinh doanh với nhiều chi nhánh hoặc các công ty dầu mỏ với nhiều điểm khai thác. Đặc trưng của những tổ chức này là sự hiện diện của nhiều hệ thống thông tin cục bộ, vì thế nảy sinh các vấn đề liên quan đến cập nhật, liên kết và tập hợp dữ liệu để xử lý, thống kê và tạo các báo cáo ... Để giải quyết các khó khăn nêu trên, kiến trúc đa lớp (multi-tier architecture) được áp dụng trong các hệ thống thông tin quản lý.

Một trong những công cụ hỗ trợ phát triển các hệ thống thông tin đa lớp hiệu quả nhất là Borland MIDAS - Multi-tier Distributed Application Services Suit (Bài "Phát triển ứng dụng CSDL đa lớp với Borland MIDAS" trong TH&ĐS 04/N2000 có giới thiệu sơ lược về công cụ này). Mô hình này cho phép lưu trữ tập trung và xử lý dữ liệu ngay cả khi trạm làm việc ở rất xa database server và không thể kết nối qua LAN. Có thể sử dụng kết nối modem trực tiếp qua mạng điện thoại hoặc Internet. Các kết nối này không nhất thiết phải rất ổn định: client appltcation có thể lưu trữ dữ liệu cục bộ (caching data) để xử lý và cập nhật vào server khi cần thiết. Sử dụng Constraintbroker cho phép chuyển từ database server các ràng buộc về toàn vẹn dữ liệu, các logic quản trị, ... để kiểm tra ngay tại máy khách. Có thể đặt database server và data Access server (application server) tại trụ sở chính, data access server được trang bị với các thành phần của MIDAS và có thể được truy cập thông qua Internet. Trạm làm việc cần có web browser (Internet Explorer hoặc Netscape Communicator) để truy cập web server. Vị trí cũng như hệ điều hành web server trong trường hợp này là không quan trọng, bởi vì nó chỉ được dùng để "download ' và "upload" client application (Activex Page).

Một phương án khác có thể được áp dụng là mô hình 4 lớp (4-tier) với ứng dụng khách "siêu mỏng" (ultra-thin client application). Trong trường hợp này, client application có thể là ứng dụng CGI/WinCGI hoặc ISAPI/ NSAPI DLL. Điểm hạn chế duy nhất trong mô hình 4 lớp này là web server (MS Internet Information Server hoặc MS Personal Web Server) phải thực hiện trên nền Windows NT/ 9X vì nó không chỉ đơn thuần là nơi lưu trữ file, mà còn là nơi thực hiện ứng dụng làm việc với data access server được viết trên Delphi, C++Builder hoặc JBuilder.

MIDAS 3 và Delphi 5 hỗ trợ phát triển ứng dụng web client theo mô hình 4 lớp nêu trên với các thành phần InternetExpress. InternetExpress là sự kết hợp giữa công nghệ MIDAS và Webbroker (công nghệ hỗ trợ phát triển ứng dụng CGI/WinCGI, ISAPI/ NSAPI). Ngoài ra, InternetExpress còn hỗ trợ XML (Extensible Markup Language).

MLDAS WEB APPLLCATLON

Để có thể sử dụng client application của hệ thống thông tin đa lớp trên Internet, cần phát triển nó như một ứng dụng web đặc biệt: ứng dụng này vừa đóng vai trò clien đối với application server, vừa hoạt động như web server application và được cài đặt với web server trên cùng một hệ thống

Với Delphi 5, có 2 hướng phát tnển MIDAS web application:

Kết hợp MIDAS với ActiveX để xây dựng client application như một ActiveXPage. Việc này cho phép mọi browser hỗ trợ ActiveX thực hiện client application như một in-process server (kiến trúc 3 lớp).

Sử dụng InternetExpress để phát triển client application dựa trên các gói dữ liệu XML (XML data packets). Việc này cho phép các browser hỗ trợ javascript và XML giao tiếp với client application thông qua các trang HTML động (kiến trúc 4 lớp)

Hai hướng phát triển rất khác nhau và sự lựa chọn một trong số chúng dựa trên những yếu tố sau:

Mỗi hướng dựa trên các công nghệ khác nhau (ActiveX và javascript+XML). Hướng thứ nhất dòi hỏi web browser hỗ trợ ActiveX (giới hạn bởi platform Windows). Hướng thứ hai đòi hỏi web browser hỗ trợ javascript và XML (Internet Explorer4 và Netscape Communicator4);

ActiveX Page phải được download xuống Web browser và hoạt động như một in-process server. Như vậy, sử dụng ActiveX đòi hỏi nhiều tài nguyên của máy khách hơn là ứng dụng HTMLL;

ứng dụng InternetExpress có thể tích hợp với các trang HTML khác, trong khi đó ActiveX client cần chạy trong từng cửa sổ riêng biệt:

InternetExpress sử dụng tiêu chuẩn HTTP và cho phép bỏ qua mọi firewall đương đầu với ActiveX.

Sử dụng ActiveX cung cấp nhiều khả năng để phát triển ứng dụng hơn và không bị hạn chế bởi các thư viện javascript.

InternetExpress là một bổ sung mới của Delphi 5 . Phát triển InternetExpress client là sự kết hợp giữa xây dựng web server application với xây dựng client application thông thường. Trong ứng dụng InternetExpress, TwebModule sẽ thay thế vai trò TRemoteDataModule trong client application thông thường, TXMLBroker thay thế TClientDataSet. Kết nối giữa MIDAS web client application với application server được thực hiện nhờ một trong số các thành phần kết nối như TDCOMConnection, TSocketConnection, TCORBAConnection hoặc TWebConnection (HTTP).

Tương tự như trong web server application, TMIDASPageProducer tạo HTML- code để thể hiện trong cửa sổ web browser. Khi xây dựng trang web, cần sử dụng Web Page Editor để thiết kế các thành phần giao diện người dùng như DataForm, DataGrid,DataNavigator, ...(cácthànhphần trên trang Data Controls quen thuộc không thể sử dụng trong ứng dụng web).

Thuộc tính IncludePathURL của TMIDASPageProducer phải được thiết lập để chỉ đến đường dẫn, nơi các file javascript thường trú (có dạng http:// <webserver>/... ). Các file *.js phải được chép từ \Delphi5\source\WebMIDAS\ đến đường dẫn URL này (có 5 file với kích thước tổng cộng khoảng 60KB). Ngoài ra, thông qua Action Editor cần tạo WebActionItem để phản hồi các đòi hỏi (request) của client.

Sau khi biên dịch ứng dụng và chuyển đến thư mục scripts của web server, có thể thực hiện nó từ web browser bằng http://<webserver>/scripts/<midasweb> .

Trong ứng dụng thực tiễn, các công nghệ mới nêu trên của Inprise/Borland được áp dụng rộng rãi để phát triển những hệ thống lớn. MLDAS cùng với những công cụ lập trình như Delphi, C++Builder và JBuilder cho phép phát triển một cách hiệu quả các hệ thống thông tin client server đa lớp theo phưong hướng "thin" client thực thụ.

(theo Tin học đời sống)

Close


Bạn tìm đến nhóm thiện nguyện VTT qua
www.tuoitre.org, tuoitre.org, www.tuoitre.de hoặc tuoitre.de.
Mọi ý kiến đóng góp xin bạn hãy liên lạc với chúng tôi qua lienlac@tuoitre.org.