我是Gearman的新手。我对优化的Gearman用法有以下疑问:
1)我认为worker期望job为"string“。是否可以将数组或哈希作为作业发送给worker?如果不是,JSON是发送Array/Hash的最佳Job格式吗?
2)我是否可以作为Job Server的worker附加rails应用程序路由?
3)如何检查worker是否正在运行?是否有可用于作业服务器和工作进程统计信息的管理工具?
4)我能否设计一个ROR系统,使每个请求都通过Gearman作业服务器?我有多个应用程序使用同一个数据库(其中一些是iPhone应用程序,安卓应用程序,网站)。我的主要目标是使用通用API访问所有这些应用程序的内容。或者Gearman更适合后台进程?
谢谢。
发布于 2009-12-20 01:19:57
我不能说我对gearman有所了解,但我想我可以回答第一个问题。
当您想要将对象传递给其他方法时,需要以某种方式对其进行序列化(这几乎总是在将对象传递给另一个进程时完成)。做到这一点的“最佳”方式很大程度上取决于你想要发送的内容。JSON是一种方法,当涉及到传输大小时,它可能是最小的。所以,是的,您可以使用JSON来传输散列和数组。
发布于 2010-12-18 15:27:34
是否可以将数组或哈希作为作业发送给worker?如果不是,JSON是发送数组/散列的最佳作业格式吗?
任何类型的字符串都可以;但是,JSON很棒,因为它可以很容易地解码,并用于对模型/实体进行消减。
是否可以作为作业服务器的工作进程附加rails应用程序路由?
作为工作者,我通常更喜欢编写独立的应用程序/脚本。Ruby可以很好地解决这个问题。您甚至可以将这些脚本编写为Thor脚本。
是否有可用于作业服务器和工作进程统计信息的管理工具?
如果您对shell感到满意,这可能会为您工作:Any way to access Gearman administration?
或Gearman更适合后台进程--
是的,如果您将Gearman用于独立的工作进程,而不是试图在其上运行整个应用程序,您将获得更好的控制。
发布于 2009-12-22 07:41:29
http://rack.rubyforge.org/
你可能想看看rack。这可能会带你去你想去的地方..
https://stackoverflow.com/questions/1933055
复制相似问题