1

我有一个小型服务器集群,用于处理大量的网络流量。这是一个非常标准的设置;3个Web服务器,负载均衡器,数据库服务器,仓库服务器。

困难在于我有许多按计划运行的不同任务,并且这些任务在运行频率方面差异很大。这些项目是:

  1. 仓库工作。显然是运行在单仓库服务器上。将来可能会出现问题,但目前我们只有一个仓库。每晚运行。
  2. 预定报告。使用 Quartz.NET,在我们的 ASP.NET 环境中触发。每当用户安排它们时运行,通常每天运行。
  3. 统计快照。通过应用程序池启动的线程在 ASP.NET 中运行,获取整个系统负载的快照以供将来分析。每 2 分钟运行一次。
  4. 系统事件。我们在系统中有很多“东西”需要以相对较高的频率更改它们的状态(在任何给定的检查中,大约 5-10 个项目需要状态更新)并将这些信息广播到连接的 Web 客户端。当前也设置为在应用程序池中的线程中运行。每2秒左右运行一次。

所有这一切都在单服务器设置中完美运行,即使在多服务器设置中,我也可以关闭非主要 Web 服务器(这是我当前的解决方案)上的东西。

真正的问题是,最好的设置方法是什么,以便系统内置更多冗余?将整个内容提取到不同框(框)上的 Windows 服务中?Web 服务器是否相互通信,以便它们可以检测到主服务器上的故障并让辅助服务器接管?

我对任何想法/建议感兴趣!

4

0 回答 0