用于中等长度任务的WCF群集

本文关键字:WCF 群集 任务 用于 | 更新日期: 2023-09-27 17:59:18

我们有一个分析文本的自托管WCF应用程序。我们正在讨论的装置涉及处理一批小的文本片段(社交媒体)和较长的文本片段,如报纸文章。在一个WCF实例中,较长的片段平均需要5-6秒来处理,而较短的片段不到1秒。每天要处理数百万个每种项目。

几个问题:

  1. 建议的配置是什么?Windows Azure/任何类似亚马逊的IaaS/由负载均衡器管理的集群
  2. WCF中是否有对负载平衡的内置支持,而不需要编写包装器
  3. 出于某种原因,当一个长任务正在运行,而另一个任务被提交到部署在多核计算机上的实例时,它们都在同一个核上并行运行,而不是在另一个空闲的核上启动。这是某种保守的分配吗?能否更有效地管理它

用于中等长度任务的WCF群集

  1. 简单的答案是Azure(因为它是微软的PaaS),但这并不是一个真正的技术问题。这取决于成本和增长预测
  2. 不是。WCF支持负载平衡,但WCF本身在您的进程中运行,无法实现负载平衡。这通常是您的托管平台的一个功能
  3. 如果这是两个不同的进程,那么操作系统会安排CPU时间,我不建议这样做。如果两者都在同一个核心上运行,那可能是因为它们可以(这是有道理的,因为WCF在IO的情况下会使用很多)