我对ZeroMQ
库非常陌生。
因此,我想了解最适合我们应用的模式(REQ-REP
,PUSH-PULL
,PUB-SUB
)。
我们使用的应用程序有两个系统,
用户与之互动的那个
和
第二个是调度程序,它执行由用户在第一个系统中安排的作业。
现在我想利用ZeroMQ
在以下场景中发送消息:
从 userSystem
到 schedulerSystem
,提交具有特定作业id
的作业以供执行。
从schedulerSystem
到userSystem
,与特定作业id
一起发送的作业已成功执行或执行失败
有人可以帮忙解决这个问题,
说明使用特定模式的原因?
提前致谢。
答案 0 :(得分:0)
亲爱的Ann,周一,没有人愿意认真回答一个问题,哪一个可能的电话号码最适合任何用途。
为什么?根本没有瑞士军刀可以做任何事情。
令人惊讶的是好消息。 作为系统设计人员,可以在绿色字段上创建 正确的解决方案 ,使用足够的设计策略,不要超过必要(开销)并且设计方面的所有优点(可扩展性,低延迟,内存占用等)
如果 userSystem
根据 schedulerSystem
输出值未处理任何内容,则 PUSH-PULL
可能是发送作业的选项,可能有扩展名。
userSystem
再次收到有关各jobID
个返回 code
的独立,异步组织状态报告消息接收方的民意调查 PUSH-PULL
可能效果很好。
为什么?否则,自然的非结构化行为 PAIR-PAIR
会阻止您的处理在性能或体系结构或两者都需要移动时按比例增长。 PAIR-PAIR
不允许您的通信框架将更多实体加入到一起,而其他实体可以将您的处理能力分配到您的IP可见性和端到端延迟允许之前。
只有一张图片,图60来自下面提到的书:
To see a bigger picture on this subject >>>,一个简单的信号平面图片和一个指向Pieter HINTJENS必读书籍的直接链接强>