Node.js和Socket.IO服务器重启通知警告
如果这是这个问题的错误堆栈,我很抱歉 我有一个Node.js服务器在Heroku上运行。每当我提交某些内容时,服务器就会重新启动。我想提醒用户,将会有一个重启,这样我就不会完全破坏他们的体验。只需一个简单的通知,文本为“服务器在X分钟内重新启动”Node.js和Socket.IO服务器重启通知警告,node.js,heroku,socket.io,notifications,Node.js,Heroku,Socket.io,Notifications,如果这是这个问题的错误堆栈,我很抱歉 我有一个Node.js服务器在Heroku上运行。每当我提交某些内容时,服务器就会重新启动。我想提醒用户,将会有一个重启,这样我就不会完全破坏他们的体验。只需一个简单的通知,文本为“服务器在X分钟内重新启动” 假设我已经设置好客户端,显示通知只需要一个Socket.IO emit我该怎么做呢?我想在客户端有一些隐蔽的功能,可以让服务器发出通知,但我担心它很容易被利用。答案是检测Heroku发送给你的应用程序关闭的SIGTERM信号,一旦检测到该信号,要向每个
假设我已经设置好客户端,显示通知只需要一个Socket.IO emit我该怎么做呢?我想在客户端有一些隐蔽的功能,可以让服务器发出通知,但我担心它很容易被利用。答案是检测Heroku发送给你的应用程序关闭的
SIGTERM
信号,一旦检测到该信号,要向每个连接的客户端发出通知,请执行以下操作:
process.on('SIGTERM', () => {
// send your signal
})
heroku功能:启用-a myapp预引导
)
您是否有某种身份验证和授权?当然,您可以限制非管理员的管理功能clients@cubrr不,我没有。如果功能需要我在服务器上检查的密码,那就足够了吗?我同意,但我没有重新连接逻辑,我相信我无法实现它,因为服务器上的数据对用户来说是必不可少的,并且正在实时更改(这是一个游戏),当服务器重新启动时,这些数据就消失了。另外,我想提前几分钟而不是几秒钟提醒用户重启。有没有一个简单的方法?不过,我很感激你的回答!尝试使用Redis之类的工具来保存一些数据,最终会丢失一些数据。您可以重新连接到回退服务器,直到主服务器启动并稳定。客户端应处理到回退服务器而不是服务器的重新连接。主服务器应该只是喊“嘿,我要关机了”。在游戏架构中,游戏的每个组件(地图、聊天等)都有不同的服务器,无法提前几分钟通知用户重启。我认为,只要您在服务器进程本身中保持状态(而不是在某种存储中,如redis),您就不可能想做什么。