【问题标题】:Load Balancing MS Dynamics CRM 2011 Sandbox Processing Service负载平衡 MS Dynamics CRM 2011 沙盒处理服务
【发布时间】:2012-12-15 01:37:34
【问题描述】:

好像我在这个问题上碰壁了,没有太多关于此事的文档也无济于事。

我定期向 CRM 运行大型自定义导入作业,所有这些都涉及从自定义客户端调用组织服务以将记录推送到 CRM。记录通过自定义沙盒插件。

导入需要相当长的时间,我正在尝试通过在多台服务器上设置沙盒处理服务来提高导入速度。

到目前为止,这是我尝试过的:

  1. 使用沙盒处理服务添加另一台服务器。

                              / Sandbox Processing Service (crmsb1)
    Client > Front End (crm) <
                              \ Sandbox Processing Service (crmsb2)
    

    使用沙盒处理服务添加另一台服务器没有帮助。前端服务器没有将负载分配到两台服务器上,它继续使用原始服务器。只有在第一个后端服务器上禁用沙盒处理服务时,第二个服务器才开始处理插件请求。 (带回第一个在线并没有帮助。)

  2. 两个具有所有角色的负载平衡服务器。

                            / Full Server (crm1)
    Client > IIS ARR (crm) <
                            \ Full Server (crm2)
    

    我遵循this guide(和许多其他人)的信函并让 Web 应用程序通过反向代理工作,但未能通过组织服务执行请求。在通过不断更改另一个设置消除了无数 WCF 错误之后,我遇到了这个错误The security context token is expired or is not valid. The message was not processed. 让我假设负载平衡仅适用于 Web 应用程序。

  3. 在多台服务器上手动调用组织服务。

            / Full Server (crm1)
    Client <
            \ Full Server (crm2)
    

    我成功地设置了导入客户端,将导入作业拆分为多个块,并同时为每个块以循环方式调用所有组织服务端点。正如我所希望的那样,这显着加快了导入过程,并让我能够在需要时进一步扩展。

我阅读了有关此问题的所有信息,但我仍然对 CRM 2011 中负载平衡的工作原理以及可能的配置感到困惑。

这些twoguides 广泛使用了负载平衡,但没有详细描述如何设置它。

这一切都是在我上线之前在测试环境中设置的。我为所有服务使用了域帐户,设置了正确的 SPN,并且没有使用 SSL。我在 ARR 中尝试了使用和不使用 Client Affinity(它适用于 cookie,所以我假设 WCF 服务没有锁定到一个后端)。

我的问题如下:

  1. 是否可以在主动/主动设置(负载平衡)的多台服务器上设置沙盒处理服务本身(上述 1),还是仅支持主动/被动 (HA)?

  2. 如果使用多个沙盒处理服务实例的唯一方法是设置多个具有前端和后端角色的服务器(以上 2 个),是否有任何方法可以使用负载平衡器,如 NLB 或ARR,用于组织服务,还是仅支持 Web 应用的负载均衡器,我必须使用上面的第 3 种方法来对沙盒处理服务进行负载均衡?

【问题讨论】:

    标签: wcf iis dynamics-crm-2011 load-balancing nlb


    【解决方案1】:

    这是为了回应您对我的文章(http://bit.ly/QOEvLF)的评论,我也会在那里交叉发布回复:

    沙盒服务不能位于负载平衡器后面 - 或者它们的设计方式不适合该配置。我相信 CRM 实施指南包含这方面的信息,但沙盒服务将打开一个网络套接字并在特定端口上侦听流量。当沙盒服务成功上线时,它会回调 CRM 以将自己注册为“可用”(因此异步和前端等服务知道它是可用的)。然后,需要隔离(沙盒)的角色将根据需要直接通过该 TCP 通道循环调用沙盒服务。有关这方面的更多信息,请参阅:http://bit.ly/CRMSetupFAQ。另请注意,您可能还需要为沙盒服务设置自定义 SPN。

    如果您对此还有其他问题,请告诉我 - 谢谢!

    肖恩

    【讨论】:

    • 感谢您的回复。但是,它没有解释为什么一台前端服务器不会负载平衡到两台沙箱服务器(上面的 1 台)。
    • 嗨 Yona,不久之后,我在 Convergence 遇到的一位客户为类似问题添加了更多上下文,最终我发现了代码中的一个逻辑错误。现在应该已经修复了,您应该会看到沙盒服务的正确负载共享行为。现在应该修复了,我不确定它到底是什么 UR,但我相信 15 确实包含 2011 年的修复程序,CRM 2013 也是如此。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-02
    • 2012-05-21
    • 1970-01-01
    • 1970-01-01
    • 2014-01-11
    • 1970-01-01
    • 2012-07-28
    相关资源
    最近更新 更多