我不知道它们之间有什么区别。 他们在描述同样的事情?
是谷歌App Engine服务任务队列是消息队列的实现?
我不知道它们之间有什么区别。 他们在描述同样的事情?
是谷歌App Engine服务任务队列是消息队列的实现?
我问了一些开发者在Facebook社区团体了类似的问题。 这是不是GoogleAppEngine明确 - 我问更多的是一般意义上确定的RabbitMQ和芹菜之间使用情况。 下面是我得到的答复我认为这是与主题相关,且相当明确的消息队列和任务队列之间的区别。
我问:
它会说,“芹菜是QueueWrapper / QueueFramework它带走了有管理内部queueManagement / queueAdministration活动等的复杂性”是适当的?
我明白它说“芹菜是一个任务队列中”和“的RabbitMQ是一个信息经纪人”这本书的语言。 然而,似乎是第一次芹菜用户有点混乱,因为我们一直都知道的RabbitMQ是“排队”。
请帮忙解释如何/在constrast确实与RabbitMQ的芹菜什么
的响应 ,我从阿布·阿什拉夫Masnun了
任务队列和消息队列。 RabbitMQ的是 “MQ”。 其收到的消息,并将消息传递。
芹菜是一个任务队列。 它接收任务,包括其相关的数据,运行它们,并提供结果。
让我们忘记芹菜一会儿。 让我们来谈谈的RabbitMQ。 什么将我们通常做什么? 我们的Django /瓶的应用程序将消息发送到队列。 我们将有一些工人正在运行将被等待在某些队列的新邮件。 当新邮件到达时,它开始工作并处理任务。
芹菜美丽管理这整个过程。 我们不再需要学习,也不用担心AMQP或者RabbitMQ的细节。 我们可以使用Redis的,甚至一个数据库(MySQL的例子)消息代理。 芹菜允许我们定义“任务”与我们的工作人员守则。 当我们需要做的背景(或甚至前台)的东西,我们只要把这个任务(立即执行)或安排此任务延迟处理。 芹菜会处理的消息传递和运行任务。 它将推出其工人会知道如何运行你定义的任务,并存储结果。 所以,你可以在以后查询任务的结果,甚至在需要时任务的进度。
你可以使用芹菜作为cron作业太多的替代方案(虽然我真的不喜欢它)!
另一种反应 ,我从胡安·弗朗西斯科-卡尔德隆得到尊巴
我的理解是,芹菜仅仅是一个抽象的非常高的水平,以实现事件的生产者/消费者。 它取出你需要做的,例如与RabbitMQ的工作几个痛苦的事情。 芹菜本身不是队列。 该事件的队列都存储在您所选择的系统,芹菜可帮助您无需从头开始编写生产者/消费者有这样的事件工作。
最后,这里是我带回家作为我的最后学习:
芹菜是队列包装/框架,其采用具有管理底层AMQP机制/架构的RabbitMQ直接配有操作的远复杂
GAE的任务队列是允许应用程序执行后台处理的手段,他们不会服务于相同的目的消息队列。 他们是不同的功能非常不同的事情。
一个消息队列是用于共享信息,进程,线程,系统之间的机制。
一个AppEngine上的任务队列是一个AppEngine应用程式说本身的一种方式,我需要做的这一点,但我打算以后做,客户端请求的上下文之外。