2012-11-21 105 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. 要添加更多的工人,这些的确应该连接到同一个虚拟主机。你会 只能使用独立的虚拟主机,如果你想要的应用程序有单独的消息总线。