Node.js 服务器使用负载均衡器发送事件

标签 node.js load-balancing server-sent-events

我正在开发一个基于 node.js 的 Web 应用程序,它需要能够将数据推送到浏览器。 Web 应用程序将位于负载均衡器后面。

假设 Web 应用程序有一个 POST REST API 为:

/update_client

并且假设有一个第三方应用程序调用这个API来推送一些数据到Web应用程序,然后Web应用程序将数据推送到浏览器。

现在假设我在负载均衡器后面有两台服务器,Web 应用程序正在运行。浏览器客户端连接到服务器 1 以监听事件。然后其他应用程序在服务器 2 上访问/update_client API。既然这两个事件发生在两个不同的服务器上,服务器 2 如何通知服务器 1 将数据发送到连接的客户端?

如果我使用自动缩放,负载均衡器后面有动态数量的服务器怎么办?

最佳答案

您需要在服务器后方拥有某种共享资源,以便它们都知道更新。我在最近写的一篇博文中展示了如何为此使用 Redis Pub/Sub。

Server Sent Events with Node JS

关于Node.js 服务器使用负载均衡器发送事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33471766/

相关文章:

kubernetes - 库伯内特斯 : ask a L4 load balance solution for a non-cloud cluster

tomcat - Kubernetes 单点故障和负载均衡

ServiceStack 服务器发送的事件 - 参数化 channel ?

javascript - SSE 未捕获错误 : SECURITY_ERR: DOM Exception 18 with a server that provides Server Sent Events (SSE)

javascript - 有没有办法在 Git 的不同分支上拥有不同的 JavaScript 库版本?

proxy - Node.js代理,处理gzip解压

linux - 将用户编写的在服务器上运行的 node.js 脚本沙盒化

node.js - 如何在 Mongoose 中填充多个外键

javascript - 如何使用负载均衡器使meteor从一台服务器获取代码

javascript - HTML5 事件源 API 和 node.js |如何将流发送到正确的客户端?