管理群集环境中的计划任务

时间:2013-04-22 12:44:23

标签: architecture scheduled-tasks cluster-computing

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

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

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

    真正的问题是,设置它的最佳方法是什么,以便系统内置更多冗余?在不同的盒子(盒子)上将整个东西提取到windows服务中?让Web服务器相互通信,以便它们能够检测到主服务器上的故障并进行二次接管吗?

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

0 个答案:

没有答案