简单地说,在什么用例中,最好有许多进程从队列中获取消息,然后顺序地完成该作业的多个任务,或者让多个任务/进程从队列中获取1 msg,并对其完成任务。
我有一份工作要去排队。帮我洗衣服。
我可以..。
[option A]
Clean My Laundry -----> Wash it
then, Store Transaction
then, Tell ppl i'm washing
then, write a blog about it
OR
[option B]
Clean My Laundry ------> Wash it
------> Store Transaction
------> Tell ppl i'm washing
------> write a blog about it任务的顺序是无关的。他们都需要完成任务。我明白如果他们互相依赖,就把他们分组。
分组或不分组分布式进程有什么优点或缺点?
谢谢你的贡献。
发布于 2013-12-16 08:57:21
您的示例显示了并行性,而不是并发性:并行是将一个任务拆分为子任务,同时执行子任务;并发是许多不同的同时发生的事情。
正如您所说的,当您的主要任务可以拆分为相互独立的子任务时,并行处理是一个好主意。其优点是主要任务只需要最长的子任务。
Simon最近出版的关于Haskell并行处理的书是一个很好的(彻底的,非常可读的)介绍。
https://stackoverflow.com/questions/20602775
复制相似问题