Workerman多进程时,怎么向别的进程管理的连接发消息?

发布于 2022-09-12 03:15:31 字数 304 浏览 22 评论 0

我现在要做一个远程控制设备的程序,整体结构如下:

设备1,设备2,……
| /
服务器
| \
控制台1,控制台2,……

每台设备可以有多个控制台,每个控制台只能控制一台设备。

目前服务器采用 Workerman 的 WebSocket 协议把控制台和设备连起来。我的问题是,当多个 Worker 进程时,如果控制台和设备的连接不在同一个进程里,比如,设备1 发生状况时,向所有关注它的控制台发出通知,但可能有部分控制台在另一个进程里,怎么通知它们呢?

谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

挽手叙旧 2022-09-19 03:15:31

最佳实践应该是引入 MQ(Message Queue),通过订阅消息来实现你的需求,这样可以跟具体的实现解耦。

差一点儿的话你就得搞进程通讯来。像 WorkerMan 本身提供了 Channel 组件可以用于进程间通信。如果要跟操作系统强耦合的话,也可以用 Linux 上提供的共享内存之类的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文