Rich Internet Application (RIA) đƣợc công bố vào năm 2002 bởi hãng
Macromedia. Năm 2007 một nhóm nghiên cứu gồm 3 nhà khoa học Dana Moore thuộc lĩnh vực công nghệ bảo mật BBN, Raymond Budd và Edward (Ted) Benson là kỹ sƣ phần mềm thuộc lĩnh vực công nghệ bảo mật BBN đã viết cuốn sách “Professional Rich Internet Applications” trình bày những vấn đề cơ bản của RIA .
Trƣớc khi có thuật ngữ RIA, nhiều nhà nghiên cứu và triển khai thử nghiệm nội dung này và có nhiều tên gọi khác nhau:
− Remote Scriptting, đƣợc Microsoft đƣa ra năm 1998.
− X Internet, đƣợc tổ chức nghiên cứu Forrester đƣa ra năm 2000. − Rich (Web) Clients.
− Rich Web Application.
RIA là các ứng dụng trên web có đầy đủ các tính năng và đặc trƣng của các ứng dụng desktop truyền thống, là một sự kết hợp giữa ứng dụng web truyền thống với mô hình ứng dụng destop thể hiện ở ý tƣởng là đưa một số xử lý trước đây vẫn được thực hiện trên máy chủ trong mô hình truyền thống về thực hiện trên máy
khách, giữ lại các xử lý khác trên máy dịch vụ.
Hình 2.3: Các thành phần cần thiết trong một web service và mối quan hệ giữa các thành phần – Trích dẫn từ: http://voer.edu.vn/bai-viet/khoa-hoc-va-cong-nghe/lap-
trinh-phan-tan-voi-web-service.html
30
Trong các ứng dụng web truyền thống ban đầu, phần ứng dụng về mặt lôgic chạy trên máy chủ để thực hiện các xử lý sau khi ngƣời dùng gửi yêu cầu tới nó bằng cách chọn đƣờng liên kết (link) hoặc nút lệnh trên giao diện. Cơ chế này đƣợc gọi là cơ chế đồng bộ, có nghĩa là, ngƣời dùng sau khi gửi yêu cầu đi phải đợi máy chủ xử lý và tải lại trang kết quả xử lý. Quá trình này cứ lặp đi lặp lại một cách chậm chạp mỗi khi có yêu cầu mới gây cảm giác khó chịu, bất tiện cho ngƣời sử dụng. RIA ra đời đã giải quyết đƣợc vấn đề bất tiện này.
Hình 2.4. Sơ đồ tƣơng tác giữa ngƣời dùng và ứng dụng trên web – Trích dẫn theo tài liệu: Design, Measurement,and Management Challenges
Sơ đồ tƣơng tác giữa các đối tƣợng trong môi trƣờng hoạt động theo mô hình web. Sơ đồ cho ta thấy đƣợc các hành vi có liên quan tới quá trình tƣơng tác giữa ngƣời sử dụng và ứng dụng web.
Ở mức cao nhất, mô hình minh họa 3 nội dung chính thể hiện bằng ba phần đƣợc đóng khung và tô bằng các màu khác nhau:
− Phần trên cùng(1): thiết kế của ứng dụng và môi trƣờng sử dụng
− Hành vi của người dùng (2): nhìn, suy nghĩ, tác động, bỏ qua
− Hành vi khi sử dụng ứng dụng (3): tƣơng tác của ngƣời dùng và cách thức đáp
ứng của hệ thống ứng dụng web
Mô hình trên mô tả từng bƣớc những gì xảy ra trong suốt quá trình tƣơng tác giữa ngƣời sử dụng và ứng dụng dựa trên trình duyệt. Phần mũi tên đen đậm thể hiện luồng hoạt động của một ứng dụng Web truyền thống bắt đầu từ yêu cầu của ngƣời sử dụng (click), thông qua giao thức HTTP gửi yêu cầu tới máy chủ, sau khi nhận yêu cầu, xử lý, máy chủ sẽ trả lại kết quả về cho máy trạm tại bộ nhớ tạm thời của trình duyệt (browse cache), khi dữ liệu đã trả về đủ tại bộ nhớ
31
tạm, ngƣời sử dụng có thể nhận đƣợc dữ liệu thông qua các khung nhìn trên trang web.
Theo sơ đồ này, nếu chu trình di chuyển thông tin theo mũi tên có thể tách biệt thành hai vòng luân chuyển dữ liệu giữa người
dùng - máy khách và giữa máy khách – và máy dịch vụ để chúng hoạt động một cách độc lập sẽ cải thiện đáng kể sự hoạt động của hệ thống này. RIA đã phát triển trên ý tƣởng này.
Hình 2.5. cho ta thấy, các đoạn thẳng với nút đậm
hai đầu mô tả sự tƣơng tác giữa hai đối tƣợng chứa các đầu mút đó. Rõ ràng là, quá trình tƣơng tác giữa máy khách
(engine) và người dùng (thể hiện ra ở display) có sự độc lập nhất định (tƣơng đối) với quá trình tƣơng tác giữa máy khách
và máy chủ (webserver và CSDL). Sự sai khác này đƣợc xem
là sự không đồng bộ của hai quá trình tương tác.
Để thực hiện đƣợc mô hình trên, ngƣời ta đã sử dụng một sản phẩm công nghệ đƣợc kết hợp từ các bộ sản phẩm Flash của hãng Abode, java applets, và Ajax .
Hình 2.6. Cấu trúc giải pháp công nghệ trong RIA – Trích dẫn trong tài liệu
Design, Measurement,and Management Challenges.