【问题标题】:Understanding the MajorDomo Pattern from NetMQ ZeroMQ从 NetMQ ZeroMQ 了解 MajorDomo 模式
【发布时间】:2019-08-29 01:49:08
【问题描述】:

我正在尝试了解如何最好地在 c# 中实现 MDP 示例,以便在 多客户端 - 单服务器环境中的 Windows 服务中使用。

我已阅读文档,但我仍不清楚以下内容:

  • 是否应该在启动时创建所有 Worker 实例并让其继续运行?
  • Worker 应该都是不同类型的服务还是只是同一服务的不同实例?
  • 我可以在包含 Broker 和 Workers 时拥有一个 Windows 服务,还是最好将它们拆分为自己的服务?

我使用的示例代码是取自这里 https://github.com/NetMQ/Samples 的 MajorDomo 模式

【问题讨论】:

    标签: zeromq netmq


    【解决方案1】:
    1. 是的,MDP 环境中的所有工作人员都应该独立于请求创建,因为代理不应该知道如何创建它们
    2. 每个工人处理给定的“服务”(合同)。显然,每份合同都应至少有一名工人。
      • 如果您需要并行处理请求,并且给定的工作人员一次只能执行一项,那么为该服务配备额外的工作人员可能是有意义的。但是,如果涉及多台机器,通常您会这样做(水平缩放)
    3. 您可以让代理和工作人员在同一个进程中。但是,如果您只想更新一个工作人员,同时关闭代理可能会让客户感到烦恼。我建议让代理成为自己的进程,让工作人员在一个或多个其他进程中。

    【讨论】:

    • 嗨@bradley。我有两个 .net core 2.1 应用程序,其中一个包含代理,另一个应用程序包含一组处理不同服务的工作人员。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-11
    • 2015-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多