我正在用Python语言构建一个类似于TwitPic的移动照片共享站点,并且一直在探索各种队列来处理图像处理。我已经研究了RabbitMQ和ActiveMQ,但我认为对于我的用例,还有更好的解决方案。我在找更轻便的东西。我乐于接受任何建议。
发布于 2009-09-20 01:38:18
您可以编写一个使用python的内置multiprocessing库及其Queue的守护进程。
您所要做的就是设置一个工作者池,并让他们从队列中等待作业。您的主进程可以将新作业转储到队列中,您就可以开始工作了。
发布于 2009-09-20 02:24:21
Gearman的优点在于它允许您同步在多个工作进程上执行的多个作业。
我已经在一些大容量应用程序中成功地使用了beanstalkd。
后者更适合于异步作业,而前者在您想阻止作业执行时为您提供了更大的灵活性。
发布于 2009-09-20 02:14:50
您是在考虑单机架构,还是考虑集群?将映像转发到同一台机器上的可用工作进程或不同机器上的可用工作进程没有太大区别,特别是在使用TCP套接字的情况下。了解可用的工作进程,在必要时产生更多可用的资源,在工作进程崩溃时具有故障保护机制,等等,这些都会逐渐使问题变得更加复杂。
它可以像使用httplib将镜像推送到运行Apache或twisted的私有服务器和一组cgi应用程序一样简单。当您添加另一个服务器时,在它们之间轮询请求。
https://stackoverflow.com/questions/1450038
复制相似问题