16/08/2019, 15:20

Tuốt tuồn tuột về HTTP Polling và SSE (Server-sent event)

Hôm nay, nhân tiện có task research call API bằng thằng AFNetworking bên Objective C , lướt qua thấy một số kĩ thuật giao tiếp (Client / Server) mới. Đọc ra mới thấy có Library AFRocketClient sử dụng (Server sent event), rồi thì là HTTP Polling, Long Polling Đúng là đụng vào ...

Hôm nay, nhân tiện có task research call API bằng thằng AFNetworking bên Objective C, lướt qua thấy một số kĩ thuật giao tiếp (Client / Server) mới.

Đọc ra mới thấy có Library AFRocketClient sử dụng (Server sent event), rồi thì là HTTP Polling, Long Polling Đúng là đụng vào cái nào cũng brand new, nên có tìm hiểu đôi chút, viết bài này chia sẻ chút kiến thức nhỏ nhoi.

1. HTTP Regular – Kiểu truyền thống (anh hỏi thì em thưa).

Đối với HTTP kiểu truyền thống, khi anh (client) đưa ra câu hỏi, yêu cầu có thể “ấy” một cái được không?. Nếu em đồng ý, lập tức trả lời CÓ, ngược lại thì nói là KHÔNG. Chả hề chần chừ suy nghĩ.

Vấn đề đối với kiểu truyền thống này là hai chữ lập tức. Thời nay đã hiện đại rồi, vừa mới 8h02 client (anh) gửi request cho em (server) thì sau 2 mi li se cần ba má server (em) gửi request với nội dung đồng ý.

Vậy là chỉ tại 2 mi li se cần mà client (anh) lại nhận được câu trả lời là “éo”.

Thiệt tình là cay cú vl, từ đó kỹ thuật HTTP Polling ra đời, mục đich nhằm gia tăng khả năng kết đôi, giúp tăng tỉ lệ sinh, giảm tỉ lệ tử, … lạc đề

Có thể bạn quan tâm

  Top 20 API trong AI và Machine Learning bạn nên biết
  Golang là gì? 9 Framework tối ưu “cực căng” cho Golang

2. HTTP Polling – Kiểu siêng năng (cứ sau 5 phút lại hỏi, bất kể em có đồng ý không, hết 5 phút lại hỏi).

Chính vì kiểu regular hỏi phát bị từ chối luôn, nên Polling ra đời, siêng năng cần cù gửi request sau một thời gian nhất định, vấn đề bất kể phản hồi (responsecó dữ liệu hay không?. Cụ thể ra là kệ m* em có trả lời có hay là không, hay là ỉm (timeout) thì cứ 5 phút anh vẫn hỏi 1 lần (đẹp trai không bằng chai mặt) 

0