AJAX–TươnglaicủaWeb2.0
collection by traibingo
1
Google biến ứng dụng online thành offline
Các ứng dụng web sẽ như thế nào nếu bạn không kết nối được Internet? Mục đích của
API Gears mà Google đưa ra là để biến dữ liệu trực tuyến luôn sẵn có mọi lúc, mọi nơi.
Các ứng dụng web sẽ như thế nào nếu bạn không kết nối được Internet? Mục đích của
API Gears mà Google đưa ra là để biến dữ liệu trực tuyến luôn sẵn có mọi lúc, mọi nơi.
Nếu dùng ứng dụng web, bạn sẽ vấp phải một trở ngại chung: khi không nối mạng
(offline) thì bạn không thể lấy được dữ liệu. Nhưng một số ứng dụng đang xoay chuyển
vấn đề này.
Zimbra, ứng dụng e-mail nguồn mở, đã bổ sung bản offline tên là Zimbra Desktop từ
hồi tháng 3 vừa qua. Mozilla cũng cho biết Firefox 3 sẽ hỗ trợ bộ nhớ đệm (caching)
cho phép các ứng dụng web chạy offline. Và mô hình (framework) ứng dụng Ajax cho
nền tảng để bàn của Adobe gọi là AIR sẽ có các tính năng hỗ trợ cho dữ liệu offline.
Nhưng Google đã thực hiện một thay đổi lớn nhất cho đến nay về vấn đề này bằng
Gears API mà hãng công bố vào tháng 5.
Google tung ra Gears kèm với ứng dụng đầu tiên để áp dụng, đó là một phiên bản
Google Reader mới cho bạn đọc tin RSS offline. Các công ty khác cũng bắt đầu sử
dụng framework Gears; ứng dụng đầu tiên mà chúng tôi tìm thấy được là công cụ
Remember the Milk để theo dõi khối lượng công việc trực tuyến
(rememberthemilk.com).
Hãy thử Gears
AJAX –TươnglaicủaWeb2.0
collection by traibingo
2
Cả Google Reader và Remember the Milk đều
đưa ra phương thức hỗ trợ offline đơn giản
như nhau. Bạn chỉ việc nhấn vào một biểu
tượng mũi tên màu xanh lá trên thanh công cụ
ở đầu màn hình để tải về hoặc đệm dữ liệu
mà bạn cần làm việc offline. Một khi đã đồng
bộ dữ liệu, bạn có thể ngắt kết nối và vẫn tiếp
tục làm việc, thậm chí nếu bạn đóng và mở lại
trình duyệt. Khi có kết nối trở lại, bạn nhấn
vào biểu tượng mũi tên màu xanh dương ở
cùng vị trí cũ và những thay đổi của bạn ánh
xạ lại vào bản trực tuyến.
Reader chạy với Gears hoạt động khá tốt mặc
dù hỗ trợ offline của nó còn một chút thô sơ, cơ bản. Các bản tin văn bản như của
Engadget hay của Techcrunch dĩ nhiên là chạy tốt nhất nhưng có lẽ bạn cũng muốn
Reader đồng bộ cả hình ảnh vào tin và tăng số tin đồng bộ để đọc offline. Vẫn còn lỗi
nhỏ là nếu bạn đang online và nhấn vào nút offline thì bạn sẽ bị trả lại về ngay tin đầu
tiên đang đọc và bất kỳ hình ảnh nào có trên trang tin đó đều bị mất.
Milk cũng gặp vấn đề tương tự. Xóa một tác vụ ở chế độ offline thì bạn không có cách
nào để phục hồi lại tác vụ đó mặc dù bạn có thể dễ dàng undo hành động đó ở chế độ
online.
Dù sao đi nữa, khi chạy offline với một ứng dụng Gears thì bạn nên lên kế hoạch sử
dụng. Bạn đừng hy vọng có thể bắt đầu công việc trong Reader mà không có kết nối
ban đầu. Với những ứng dụng Gears hiện thời bạn cần kết nối ban đầu và chuyển tất
cả chúng sang chế độ offline trước khi ngắt kết nối. Đây có thể là tùy chọn tốt để đồng
bộ tự động bất cứ khi nào bạn online.
Hỗ trợ offline không đem đến mọi thứ mà bạn muốn trong
Nhấn vào biểu tượng màu xanh lá nhỏ,
ứng dụng Gears sẽ đệm dữ liệu để làm
việc offline.
AJAX –TươnglaicủaWeb2.0
collection by traibingo
3
Google Reader, tiêu biểu là sẽ không có bất kỳ hình ảnh nào
trong tin.
Tương lai ứng dụng offline
Dù vậy, những ứng dụng dựa trên Gears cũng đã phác họa được tương lai. Chắc chắn
là Gears hỗ trợ cho Reader nhưng nếu hỗ trợ cho cả Gmail hay Google Calendar thì có
thể là điều rất tuyệt hay không? Và với Docs and Spreadsheet hay các ứng dụng khác
trong bộ Google Apps thì sao?
Hỗ trợ chạy offline sẽ là bước chính trong việc phát triển các ứng dụng chạy trên trình
duyệt và những ứng dụng này sẽ rất có khả năng thay thế các ứng dụng để bàn. Thêm
vào hỗ trợ offline cho Gmail hay Docs and Spreadsheet sẽ không phải là điều dễ dàng
vì một lý do, dữ liệu có thể sẽ phải di chuyển nhiều. Làm việc cẩn thận nhất thiết phải
đồng bộ dữ liệu để những gì có trên máy tính cũng nên có trên mạng. Nhưng một điều
chắc chắn là hỗ trợ ứng dụng offline đang dần dần xuất hiện.
Trong khi đó, nhiều ứng dụng nhỏ trên nền web2.0 như là Remember the Milk sẽ tận
dụng từ hỗ trợ offline. Các bộ công cụ như là Dojo Offline (dojotoolkit.org/offline) đang
nở rộ, thuận tiện hơn cho các nhà phát triển xây dựng ứng dụng Gears. Và khi Firefox
3.0 hỗ trợ đệm dữ liệu offline ở mức sâu hơn thì tình huống này chắc chắn được cải
thiện.
Mashup cho ứng dụng nghiệp vụ
Nếu có chính sách thích hợp, mashup có thể tạo nên lớp ứng dụng mới hiệu quả và
hữu ích trong môi trường doanh nghiệp.
Nếu có chính sách kiểm soát thích hợp, mashup có thể tạo nên lớp ứng dụng mới hiệu
quả và hữu ích trong môi trường doanh nghiệp.
Mashup đang trở nên thịnh hành theo trào lưu Web 2.0. Thường các dịch vụ web dùng
mashup kết hợp bản đồ với nhiều loại dữ liệu từ nhiều nguồn trên web. Trong năm qua,
chúng ta đã chứng kiến nhiều site mới nổi đình nổi đám, như Zillow.com dự đoán giá
bất động sản hay AuctionMapper thể hiện các kết quả tìm kiếm eBay trên bản đồ để
giúp định vị những người bán hàng gần nhất.
AJAX –TươnglaicủaWeb2.0
collection by traibingo
4
Nhưng mashup còn có thể làm được nhiều việc hơn là những bản đồ có chú giải cho
những website thông thường. Kỹ thuật này cũng có thể áp dụng cho những ứng dụng
nghiệp vụ phục vụ hoạt động của doanh nghiệp. Vì mashup dựa trên nền tảng kỹ thuật
hiện có - JavaScript, XML và DHTML, kết hợp với kết nối Internet tốc độ cao để hỗ trợ
giao diện đồ họa và tính năng phong phú - nên không yêu cầu đầu tư nhiều. Mashup
đang bắt đầu được xem xét một cách nghiêm túc như là giải pháp cho các vấn đề tích
hợp, ứng dụng vốn thường là gánh nặng trước đây.
Cách thức tích hợp linh hoạt này đã được áp dụng trước đây, như các site thương mại
điện tử kết hợp dữ liệu giám sát của UPS hay FedEx (các dịch vụ vận chuyển hàng
hoá) với thông tin đơn hàng để cung cấp màn hình tổng hợp về tình trạng đơn hàng.
Trong môi trường doanh nghiệp, các hãng cung cấp giải pháp portal (cổng thông tin)
như IBM và Plumtree đã từ lâu cung cấp các công cụ đồ hoạ để cho phép kết hợp các
nguồn dữ liệu một cách dễ dàng, tạo nên các ứng dụng web tùy biến đơn giản.
"Điểm khác biệt là giờ đây có sẵn nhiều thư viện API được xây dựng theo các chuẩn
chung giúp dễ sử dụng", theo Giovanni Gallucci, chủ tịch của Kinetic Results, công ty
chuyên về tối ưu công cụ tìm kiếm và phân tích web.
Kinetic Results đã tạo các mashup sử dụng dữ liệu lưu lượng web và các dữ liệu phân
tích khác để tạo nên những báo cáo trực quan cung cấp cho khách hàng. Hay như
hãng môi giới địa ốc Zip Realty sử dụng mashup để tích hợp dữ liệu khách hàng từ hệ
thống CRM vào email gửi cho các đại lý. Danh sách các công công ty đang sử dụng
mashup còn nhiều
Cố nhân trở lại
Nhiều năm nay, các ứng dụng web đã xâm nhập rộng rãi trong môi trường doanh
nghiệp, vì vậy việc tích hợp nhiều nguồn dữ liệu phía sau tường lửa không có gì mới.
Tuy nhiên việc áp dụng AJAX (Asynchronous JavaScript and XML) đang làm thay đổi
cục diện. "Điểm hay đó là bạn có một nền tảng hiện diện khắp nơi và bạn có thể dễ
dàng tích hợp các thành phần", theo Ross Dargahi, đồng sáng lập kiêm phó chủ tịch
công nghệ tại Zimbra, hãng phát triển các công cụ cộng tác và email dựa trên AJAX.
Hơn nữa, khi ngày càng có nhiều doanh nghiệp và nhà cung cấp dịch vụ áp dụng các
công nghệ web, sẽ càng có nhiều dữ liệu ở dạng XML. "Trước đây, phân nửa khối
lượng công việc là tìm cách gắn kết các thành phần với nhau. Với XML và các công
nghệ đi cùng với nó, công việc đó trở nên đơn giản", theo Gallucci.
Aaron Tavistock, kiến trúc sư trưởng của Zip Realty, nhận định việc Google đưa ra
Google Map API đã tạo nên bước ngoặt quan trọng. Google đã đóng góp rất nhiều cho
ý tưởng mashup với việc cung cấp miễn phí thư viện API cho các nhà phát triển. Trước
đó chưa từng có việc cởi mở như vậy.
Giao diện đồ họa phong phú cũng là yếu tố lôi cuốn, theo Dargahi của Zimbra. Trước
đây, các ứng dụng web thường rất nhỏ gọn và dân trong nghề thích chúng vì dễ triển
AJAX –TươnglaicủaWeb2.0
collection by traibingo
5
khai. Nhưng người dùng lại không mấy thiện cảm với ứng dụng web vì chúng thô kệch
và ít tính năng hơn ứng dụng desktop. AJAX có thể giúp đem đến giao diện phong phú
cho các ứng dụng web nhỏ gọn. Nhưng ẩn đằng sau giao diện đập vào mắt người dùng
là cái quan trọng hơn - những thông tin có được thông qua API.
Hấp dẫn SOA
Với việc áp dụng rộng rãi các chuẩn web, việc truy cập thông tin đã trở nên dễ dàng
hơn nhiều, theo Dan Gisolfi, một kiến trúc sư của IBM, chuyên tư vấn về mashup cho
khách hàng doanh nghiệp. Các công nghệ tinh vi hơn và mới hơn của SOA (Service
Oriented Architecture) và dịch vụ web (Web Service) như SOAP (Simple Object Access
Protocol), WSDL (Web Service Description Language) và REST (Representational
State Transfer) cũng có thể góp phần tạo nên mashup.
Theo một nghĩa nào đó, mashup là dạng đơn giản nhất của ứng dụng dựa trên SOA.
"Mashup rất phù hợp với ý niệm doanh nghiệp hướng dịch vụ”, theo Shane Pearson,
phó chủ tịch tiếp thị của BEA Systems, hãng chuyên về giải pháp dịch vụ web. Thậm
chí, Jason Bloomberg, chuyên gia phân tích của công ty tư vấn ZapThink còn nhận
định: "mashup là điểm hấp dẫn nhất của SOA".
Mashup có thể đã hiện diện chung quanh bạn nhưng với tên gọi khác. Ví dụ, hãng Pratt
& Whitmey đã phát triển những mashup đầu tiên cách đây 4 năm, sử dụng thuật ngữ
"info center" cho các ứng dụng tổng hợp sử dụng các công nghệ mà hiện nay được
dùng cho mashup. Các mashup cũng áp dụng cùng các nguyên tắc về tính môđun và
giao tiếp chuẩn cho các đối tượng rời rạc, chúng là bước phát triển tự nhiên của dịch vụ
web đầu tiên và sau đó là SOA.
"Mashup tạo ra nhu cầu SOA", Gisolfi của IBM nói. Nếu công ty của bạn hiện không
theo đuổi chiến lược SOA, điều này có thể thay đổi sau khi có một vài ứng dụng
mashup mẫu. Khi những người quản lý nhìn thấy những trang web tích hợp dễ dàng và
nhanh chóng những dữ liệu và tính năng thường nằm rải rác ở nhiều ứng dụng, lợi ích
này tự nó có sức thuyết phục.
AJAX –TươnglaicủaWeb2.0
collection by traibingo
6
Quản lý nguồn lực
Thành quả ứng dụng có thể hấp dẫn, nhưng việc tạo mashup khá dễ dàng có mức độ
rủi ro nhất định. Thông thường, kỹ năng yêu cầu không nhiều hơn lập trình JavaScript
và ngày càng có nhiều các công cụ giúp dễ dàng phát triển như Tibco General Interface
Builder và Backbase. "Đó là lý do tại sao bạn nên có chính sách kiểm soát mashup",
theo Joe Kraus, CEO của JotSpot.
Bloomberg của ZapThink cũng tán đồng ý kiến trên. "Dù muốn hay không, cuối cùng
người quản lý cũng phải để cho nhân viên lắp ghép các ứng dụng tổng hợp, nếu không
có sự kiểm soát thì tai hoạ sẽ xảy ra".
Một vấn đề nữa là tính an toàn của dữ liệu từ ngoài vào công ty. FedEx và Google có
thể đáng tin cậy, nhưng với các công ty khác thì bạn nên cẩn thận. Ngày càng có nhiều
công ty cung cấp các thư viện API (XML) trên web. Gallucci của Kinetic Results cho
rằng các doanh nghiệp với các mối quan hệ đối tác tin cậy có thể sử dụng giải pháp
mashup để trao đổi thông tin và liên kết các qui trình tốt hơn. Ví dụ, bảng thông báo
AJAX –TươnglaicủaWeb2.0
collection by traibingo
7
chung cho toàn bộ dây chuyền cung cấp sản phẩm dùng các nguồn cung cấp dữ liệu từ
các công ty tham gia.
Việc quản lý cũng cần thiết đối với các nguồn dữ liệu nội bộ nhằm đảm bảo thông tin
mật không bị rò rỉ. Ví dụ, bộ phận kinh doanh có quyền làm mashup màn hình trung tâm
giám sát tình hình sản xuất, nhưng đại lý dịch vụ khách hàng thì không. Bloomberg cho
rằng các công cụ phát triển mashup cần có thiết kế đảm bảo chính sách sử dụng và
truy cập, cho phép bộ phận CNTT thiết lập chính sách và nhân viên ít biết về kỹ thuật
có thể lắp ghép mashup tùy theo vai trò của họ.
Theo Bloomberg, việc quản lý mashup không chỉ là những chính sách kiểm soát, mà nó
có mục tiêu lớn hơn đó là xây dựng các dịch vụ thích hợp để người dùng có thể tự lắp
ghép mashup dễ dàng.
Chưa đủ tin cậy
Vì các mashup dễ tạo hơn so với nhiều ứng dụng truyền thống nên chúng có thể không
được kiểm soát kỹ lưỡng về mặt bảo mật, Kraus của JotSpot cảnh báo. Nhiều ứng
dụng loại này dựa trên JavaScript vốn có nhiều kẽ hở. Việc cài đặt thoải mái các thành
phần mashup bên ngoài là mối hiểm họa vì bạn không biết rõ bên trong nó thực hiện
những tác vụ gì.
Mặc dù bộ phận CNTT có thể am hiểu các vấn đề bảo mật có liên quan đến JavaScript
hay các công nghệ nền tảng khác của mashup, nhưng chưa thể biết tường tận về các
nguy cơ mới. Gisolfi của IBM thừa nhận: "Chúng tôi chưa nắm hết các vấn đề về bảo
mật của mashup, vì vậy chưa có giải pháp bảo mật tốt nhất cho mashup".
Mặc dù hấp dẫn với những ứng dụng phát triển nhanh và gọn nhẹ, nhưng mashup
cũng có những hạn chế. Theo Stefan Andreasen - giám đốc kỹ thuật của Kapow
Technologies, "các mashup có ý nghĩa cho 80% qui trình CNTT thông thường. Nhưng
không công ty nào sử dụng mô hình như mashup cho thông tin quan trọng". Vì vậy bộ
phận CNTT phải lưu ý đến những lĩnh vực nghiệp vụ quan trọng mà mashup được
phép xâm nhập.
QUY TẮC CHO MASHUP
Một số quy tắc tham khảo có thể giúp tránh tình trạng mashup hỗn độn.
• Xác định thông tin nội bộ nào có thể được dùng và cho mục đích gì, như vậy dữ
liệu mật sẽ không rò rỉ qua mashup.
• Dùng các nguồn dữ liệu bên ngoài có giấy phép để tránh những quảng cáo
không mong muốn; với các nguồn miễn phí, cần nắm rõ các điều khoản thỏa
thuận sử dụng.
• Tạo thư mục các nguồn dữ liệu nội bộ dạng XML và RSS để cung cấp cho
những người phát triển mashup trong bộ phận CNTT cũng như ở các bộ phận
nghiệp vụ khác.
• Sử dụng mashup như là tùy chọn tích hợp cho các công việc thông thường như
giám sát tình trạng đơn hàng với các đối tác bên ngoài.
• Các công cụ mashup vẫn còn trong giai đoạn phát triển, hãy tìm công cụ tốt
AJAX –TươnglaicủaWeb2.0
collection by traibingo
8
nhất đáp ứng nhu cầu hiện tạicủa bạn, nhưng vẫn tiếp tục xem xét những công
cụ mới.
• Phát triển và bắt buộc tuân thủ các chính sách sử dụng mashup, nhưng đừng
quá cứng nhắc, nếu không bạn sẽ thủ tiêu mục đích của việc phát triển linh hoạt.
. theo Dargahi của Zimbra. Trước
đây, các ứng dụng web thường rất nhỏ gọn và dân trong nghề thích chúng vì dễ triển
AJAX – Tương lai của Web 2. 0
collection. tuyến
(rememberthemilk.com).
Hãy thử Gears
AJAX – Tương lai của Web 2. 0
collection by traibingo
2
Cả Google Reader và Remember the Milk đều