Tuesday, September 17, 2013

TLDR: Bạn đã từng nghe về EventSource?

EventSource (xem ở đây: http://www.w3.org/TR/eventsource/) là dạng phương thức gửi message từ server xuống client, mà server là người chủ động. Ngược hoàn toàn với HTTP Request thông thường, khi client chủ động gửi request lên server và server response. Nó được sinh ra để giúp server có thể gửi message xuống client để làm gì đó như là notification, tin mới,... theo cách cực kỳ realtime.

Nó còn có tên gọi khác là Server-Sent Events.




Vậy nó khác gì với WebSocket? Câu trả lời là chúng là 2 khái niệm khác nhau... Bạn nào muốn tìm hiểu chi tiết hơn có thể search trên Google, hoặc vào đọc bài viết này: http://www.html5rocks.com/tutorials/eventsource/basics/

TLDR Summary - Dành cho người không muốn đọc nhiều


Điểm lợi của EventSource so với WebSocket:
  1. Truyền nhận dữ liệu thông qua HTTP thông thường, thay vì phải "phát minh" ra một protocol mới.
  2. Có thể tự động chuyển sang dạng "hỗ trợ ngược" (backport) nếu trình duyệt không hỗ trợ WebSource.
  3. Hỗ trợ sẵn việc tái kết nối và event-id
  4. Protocol đơn giản hơn nhiều.

Điểm lợi của WebSocket so với EventSource:
  1. Real-time, và hỗ trợ kết nối cả 2 chiều.
  2. Nhiều trình duyệt hỗ trợ ở mức nền tảng.

Những trường hợp nên sử dụng EventSource:
  • Thông tin chứng khoán được push liên tục.
  • Cập nhật thông tin liên tục kiểu twitter.
  • Notification tới trình duyệt.

Cơ bản vài dòng thế thôi! Ai thấy hứng thú thì tìm hiểu thêm...

2 comments:

Biểu mẫu liên hệ

Name

Email *

Message *