2012-11-21 136 views
1

後,我決定從crontab中切換到芹菜爲我的中等規模的Django項目。我有幾件事我不明白:Django和芹菜混亂

1-我打算開始一個微型EC2實例,將專用於RabbitMQ,這是否足以滿足中小型任務? (如向亞馬遜SES發送定期電子郵件)。任務的

2-計算,確實發生Django的服務器或服務器的RabbitMQ任務上與計算(假設的RabbitMQ是一個單獨的服務器上)?

3-當我需要我的成長體系,有2個或多個應用服務器負載平衡器之後,做這兩個芹菜機需要連接到相同的RabbitMQ虛擬主機?假設應用程序服務器是碳副本,並且任務相同,並且所有內容在數據庫級別都是同步的。

回答

1
  1. 我不知道這個問題的答案,但你絕對可以配置它是適當的(例如使用-c1單個進程的工人,以避免使用太多的內存,或者eventlet/GEVENT池),見還有--autoscale選項。經紀人交通的選擇也很重要這裏,那不是投票的那些是更有效的CPU(的RabbitMQ/Redis的/豆莖)。

  2. 計算髮生在工作人員身上,經紀人只負責接受,路由和傳遞消息(並在需要時將消息持久存儲到磁盤)。

  3. 要添加更多的工人,這些的確應該連接到同一個虛擬主機。你會 只能使用獨立的虛擬主機,如果你想要的應用程序有單獨的消息總線。