【问题标题】:Node IPC Sibling Processes Communication节点 IPC 兄弟进程通信
【发布时间】:2015-02-17 14:43:33
【问题描述】:

假设以下架构上下文:

                                               +-----------------------------+                                       
                   Lobby Server Starts Process |                             |                                       
 +--------------+                              |  Network I/O process        |                                       
 |              +------------------------------>                             |  Client I/O     +--------------------+
 | Lobby Server |                              |                             <----------------->                    |
 |              |                              +---------------^-------------+                 | Client Application |
 ++-----+-------+                                              |                               |                    |
  |     |                                                      |                               |                    |
  |     |                                                      |                               |                    |
  |     |                                     +-----------------------------+   Client I/O     |                    |
  |     |       Lobby Server Starts Process   |                |            <------------------>                    |
  |     |                                     | Another Network|I/O Process |                  +--------------------+
  |     +------------------------------------->                |            |                                        
  |                                           +-----^-----------------------+                                        
  |                                                 |          |                                                     
  |                                                 |          |                                                     
  |    Lobby Server Starts Process                I |        I |                                                     
  |                                               P |        P |                                                     
  +-------------------------------+               C |        C |                                                     
                                  |                 |          |                                                     
                                  |            +----v----------v-----------------------+                             
                                  |            |                                       |                             
                                  +------------>   Application Server Logic Process    |                             
                                               |                                       |                             
                                               +---------------------------------------+

我的问题是,鉴于以下设计,实现网络 I/O 服务器和逻辑服务器之间通信的好方法是什么。逻辑服务器不能依赖特定的网络 I/O 进程来工作,例如,如果网络 I/O 进程由于某种原因出现故障,则逻辑进程必须继续运行。所有的 Network I/O 进程和逻辑进程都是 Lobby Server Process 的子进程。

本质上,我是在寻求有关如何实现兄弟进程(网络 I/O 和逻辑服务器)之间通信的想法。这都是用 Node 编写的,如果有针对 Node 的特定解决方案,但一般的想法也会有所帮助。

这是对 this 问题的跟进。

PS:如果这是一个过于笼统的编程问题并且不属于这里,我很抱歉。如果是这种情况,我会删除它。

【问题讨论】:

    标签: architecture server node.js


    【解决方案1】:

    在我看来,最简单和最具可扩展性的解决方案是ZeroMQ,此绑定用于Node。 ZeroMQ 是“套接字”概念的强大实现,其通信后端可以变化,因此可以在本地和远程同样良好地使用。

    【讨论】:

      猜你喜欢
      • 2014-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-23
      • 1970-01-01
      相关资源
      最近更新 更多