Yêu cầu thg 12 21, 2019 2:50 SA 460 1 3
  • 460 1 3
+2

Tên công nghệ/ giải pháp dùng để listener sự kiện từ Backend trên Web Browser Client?

Chia sẻ
  • 460 1 3

Hi, Sorry vì title đặt câu hỏi hơi khó hiểu, vì mình cũng không biết đặt keyword thế nào.

Ví dụ: khi mình thanh toán mua 1 sản phẩm trên website, tại mục thanh toán bằng QR Code. => Trên điện thoại, mình dùng ví điện tử scan QR code trên web và thanh toán. Sau khi thanh toán thành công, thì trên giao diện web browser, tự động "refresh"/ "reload" lại và thông báo "Đã thanh toán thành công". Đã có 1 cơ chế để phía client listener sự kiện tại đây. Và mình đang thắc mắc là bây giờ nhà nhà, người người đang dùng cái gì?

Thank you,

// Mình có nghĩ tới socket, realtimeDb, nhưng không chắc keyword này có đúng "chuyên ngành" mà xu thế mọi người đang dùng trong case này ko.

3 CÂU TRẢ LỜI


Đã trả lời thg 12 23, 2019 8:03 SA
Đã được chấp nhận
+2

Về mặt technical thì gọi là Web Socket / Socket.io là đúng rồi đấy bạn. Bạn tham khỏa thêm comment của bác @johansirius ở phía bên dưới, mình thấy bác ý nói đúng rồi đấy:

Giải pháp phổ biến nhất là dùng Websocket, ứng dụng trên di động duy trì kênh kết nối đến backend, ngay khi hoàn thành đơn hàng, mobile sẽ phát một sự kiện và backend chuyển trang. Do là trang TMĐT lưu lượng rất lớn nên họ thường dùng Kafka hay RabbitMQ.

Theo đó thì bạn có một số technical để áp dụng vào hệ thống như:

  • Web socket / socket.io
  • Pusher
  • Kafka
  • RabbitMQ

Nếu website của bạn là website nhỏ thì bạn cứ socket.io mà dùng nhé.

Chia sẻ
thg 12 24, 2019 3:26 SA

thank bác câu trả lời của bác và @johansirius đã thỏa mãn mình. Có nhiều cách để giải quyết bài toán mà mình đang nói, nhưng cái mình quan tâm là cái nào mà mọi người đang hay dùng nhất. (Vì có lẽ đó sẽ là cái hợp lý nhất).

Đã trả lời thg 12 21, 2019 8:08 SA
+2

Some keywords

Chia sẻ
Avatar botviet @botviet
thg 12 23, 2019 2:10 SA

Theo mình nghĩ đơn giản là client sẽ settimeout để call API xác nhận tới server thôi. Nếu có công nghệ nào giải quyết vấn đề này thì mình cũng muốn được biết thêm.

Avatar Sirus Johan @johansirius
thg 12 23, 2019 2:58 SA

Giải pháp phổ biến nhất là dùng Websocket, ứng dụng trên di động duy trì kênh kết nối đến backend, ngay khi hoàn thành đơn hàng, mobile sẽ phát một sự kiện và backend chuyển trang. Do là trang TMĐT lưu lượng rất lớn nên họ thường dùng Kafka hay RabbitMQ.

Đã trả lời thg 12 21, 2019 7:25 SA
+1

Theo mình biết thì với trường hợp của bạn có thể sử dụng Pusher nếu như không sử dụng quá nhiều (200k message/ngày). Thường thì các ví điện tử sẽ có 1 callback url để trả kết quả trả về thanh toán thành công, thất bại. Khi gọi tới url này thì đẩy qua pusher cho việc realtime thông báo đó. Ngoài ra còn có Firebase hoặc socketio...

Chia sẻ
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí