inflearn logo

Từ polling đến WebSocket: thiết kế giao diện thời gian thực có thể đồng bộ chính xác trở lại ngay cả khi bị ngắt kết nối

Có những lúc giá đã thay đổi ở cửa sổ khác nhưng trên màn hình của bạn vẫn chưa cập nhật, dù trạng thái hiển thị là “Đã kết nối”. Hãy cùng đọc từng bước nhật ký chạy thực tế, từ tiêu chí lựa chọn giữa polling, long polling, SSE và WebSocket khi mở hai cửa sổ màn hình đấu giá ảo, đến cách đồng bộ lại sau khi mất kết nối và cách các thay đổi đi qua nhiều máy chủ, proxy.

6 học viên đang tham gia khóa học này

Độ khó Cơ bản

Thời gian Không giới hạn

Node.js
Node.js
PostgreSQL
PostgreSQL
Redis
Redis
nginx
nginx
websocket
websocket
Node.js
Node.js
PostgreSQL
PostgreSQL
Redis
Redis
nginx
nginx
websocket
websocket

Bạn sẽ nhận được điều này sau khi học.

  • Bạn có thể chọn giữa polling, long polling, SSE và WebSocket dựa trên độ trễ cho phép và tần suất nhập liệu, đồng thời cân nhắc cả chi phí yêu cầu.

  • Có thể tách riêng “Đã kết nối” và “Đã kiểm tra trạng thái mới nhất” để xác định khi nào có thể sử dụng lại màn hình sau khi kết nối lại.

  • Bạn có thể dùng eventId, revision và vị trí đã áp dụng để phát hiện sự kiện trùng lặp, sai thứ tự hoặc bị thiếu, rồi chọn cách khôi phục phù hợp giữa phát lại nhật ký và tạo snapshot mới.

  • Tôi có thể giải thích vì sao cần kiểm tra lại các hồ sơ dự thầu bị mất phản hồi bằng cùng một khóa đăng ký, và vì sao cần dùng outbox để kết nối việc lưu với việc phát hành.

  • Khi tăng số lượng máy chủ hoặc đi qua Nginx, bạn có thể khoanh vùng nguyên nhân chỉ một số cửa sổ bị chậm bằng cách kiểm tra danh sách kết nối, Redis Pub/Sub và bộ đệm phản hồi.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Dành cho những ai đã thử thay đổi giao diện bằng API nhưng cần có tiêu chí về thời điểm và cách hiển thị các giá trị do người khác thay đổi.

  • Những người đang cân nhắc giảm khoảng thời gian polling hay chuyển sang SSE hoặc WebSocket.

  • Ai từng gặp tình trạng đã kết nối lại được nhưng bị mất thông báo, hoặc khi quay lại tab thì cùng một thông báo xuất hiện hai lần?

  • Dành cho những ai muốn tìm nguyên nhân khiến chỉ một số màn hình cập nhật chậm sau khi tăng số lượng máy chủ hoặc thêm proxy.

Cần biết trước khi bắt đầu?

  • Chỉ cần có thể đọc yêu cầu và phản hồi HTTP, JSON, hàm, sự kiện và lời gọi bất đồng bộ trong JavaScript, đồng thời từng có kinh nghiệm thay đổi giá trị hiển thị trên màn hình dựa trên kết quả API.

  • Chỉ cần biết rằng dữ liệu được lưu và truy vấn dưới dạng các hàng trong cơ sở dữ liệu. Giao dịch và cập nhật đồng thời sẽ được giải thích trong bài giảng đó.

  • Không có kinh nghiệm vận hành SSE, WebSocket, message broker hay proxy cũng không sao.

Xin chào
Đây là haeyeomiso

Xác minh sự nghiệp

606

Học viên

23

Đánh giá

40

Trả lời

4.7

Xếp hạng

17

Các khóa học

Rất vui được gặp bạn!

Tôi là Haeyeo, người luôn muốn khám phá những khả năng vô tận của AI và kỹ thuật máy tính, đồng thời chia sẻ hành trình đó cùng các bạn.

Thời đại học, với niềm đam mê chuyên ngành lớn đến mức được gọi là "kẻ nghiện khoa học máy tính", tôi đã tốt nghiệp thủ khoa với điểm chuyên ngành trên 4.4. Sau đó, tôi đã nhận bằng Thạc sĩ chuyên ngành AI tại Đại học S và tiếp tục đào sâu chuyên môn thông qua chương trình Tiến sĩ.

Tuy nhiên, vì cảm thấy việc giải quyết các vấn đề thực tế bằng AI cũng đầy sức hút như việc nghiên cứu lý thuyết, tôi đã tạm dừng chương trình tiến sĩ để tích lũy những kinh nghiệm thực chiến quý báu thông qua các dự án về LLM và phân tích video dựa trên AI tại một startup.

Hiện tại, tôi đang làm việc với tư cách là nhà phát triển dự án LLM và PM tại một trong ba tập đoàn hàng đầu Hàn Quốc, góp phần tạo ra những thay đổi tích cực mà công nghệ AI mang lại cho cuộc sống của chúng ta. Tôi sẽ chia sẻ tận tình với các bạn quá trình trăn trở, giải quyết vấn đề cũng như những bí quyết thực tế sống động mà tôi đã tích lũy được tại hiện trường. Tôi sẽ là người dẫn đường tin cậy cho bạn trong hành trình khám phá thế giới AI đầy thú vị này.

Liên hệ và đề xuất: haeyeo.open@gmail.com

Thêm

Chương trình giảng dạy

Tất cả

36 bài giảng ∙ (5giờ 35phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

Khóa học khác của haeyeomiso

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!

Ưu đãi có thời hạn

26.400 ₫

60%

1.373.397 ₫