不成比例的工人之间的负载平衡作业队列

时间:2013-04-15 10:35:08

标签: load-balancing job-scheduling beanstalkd

我正在开发一种自动管理作业队列的工具(在本例中为Beanstalkd)。目前,您必须手动设置可用工作数以从队列中取出作业,但这不允许作业出现峰值,或者在低工作时间浪费资源。

我设置了一个在作业队列服务器和工作人员上运行的客户端/服务器。客户端连接到服务器并报告可用资源(CPU /内存)以及它可以运行的作业类型。然后,服务器监视队列并向连接的客户端指示每秒运行一次以处理该队列的工作人员数量。目前有大约一百种不同的工作者类型,它们都使用非常不同的CPU /内存量,而工作服务器本身具有不同的性能水平。

我正在寻找能够根据作业队列长度和每个工作人员的资源需求最有效地平衡工作负载的技术 - 例如,一些工作人员使用100%的核心5s,而其他工作人员需要几微秒才能完成。此外,有些工作优先于其他工作。

0 个答案:

没有答案