我有一个组件,它执行以下操作
冲洗并重复上述5个步骤。重要的是要理解源A不会发送第二条消息,直到它收到先前消息的ACK。
正如您所看到的,在以下情况下,该过程处于空闲状态
源A通过网络向组件发送一条消息的时间。源A和组件都在同一VLAN,ethernet。
组件将已处理的消息发送到端点B的时间。端点B也在通过以太网连接的同一VLAN中。
组件从端点B接收ACK的时间。
组件向源A发送ACK的时间。
以上是对组件责任的描述。从部署的角度来看,我计划在一台8核机器上产生100个这样的组件。机器上没有其他任何东西可以运行。端点B和源A都在不同的机器上,一切都在同一个以太网中。 我的问题是,产生大量组件的上述模型是否会花费大部分时间等待网络IO导致上下文颠簸?如果是,为什么?
答案 0 :(得分:0)
我不确定你为何担心。首先,你设计一个效率低下的协议,然后担心它会有多快?
测量它,这是唯一确定的方法。
我怀疑只有100个线程或进程会导致上下文切换速率出现任何问题。