2016-06-22 51 views
0

我有一組任務,每個任務都需要一定的條件才能滿足。例如,任務需要100 Mb的RAM才能執行。另外我有多個服務器放置工作人員。每個工作人員都有一些配置來描述它擁有多少資源。例如,某些工作人員可以使用1 Gb的RAM來執行任務。
是否有任何系統的工作人員之間的分配任務,使每個工人滿足傳遞給它的任務的要求?或者,也許我可以以某種方式與消息代理(例如RabbitMQ)做到這一點?
我知道寫我自己的應用程序,因爲我不想重新發明輪子。
工作人員都是用Go編寫的。在不等於服務器上的分佈式計算

回答

0

RabbitMQ並沒有明確地知道它的客戶端。它知道有多少客戶,隊列中有多少訂戶等。

然而,您可以按照需要分配任務的方式設置交換。但是,在將任務發佈到哪個(類型)訂閱者之前,您必須知道它。

+0

但是如果一些工人會掉落它會導致任務失敗 –

+0

@NikitaLapkov如果你沒有確認,直到工作實際完成,它將不會。 – cantSleepNow

+0

我的意思是如果服務器「麥克」會下降,我發送標記爲服務器「麥克」的任務沒有人會採取它 –