ruby – 来自NodeJS的Queue Resque作业
发布时间:2020-12-17 02:44:12 所属栏目:百科 来源:网络整理
导读:我想从NodeJS排队Resque作业.监控Redis命令我看到: 1346127083.495055 "sadd" "resque:w:tasks:queues" "facebook"1346127083.495471 "rpush" "resque:w:tasks:queue:facebook" "{"class":"Hello::FacebookFriends","args":["2342324"]}" 直接从Nod
我想从NodeJS排队Resque作业.监控Redis命令我看到:
1346127083.495055 "sadd" "resque:w:tasks:queues" "facebook" 1346127083.495471 "rpush" "resque:w:tasks:queue:facebook" "{"class":"Hello::FacebookFriends","args":["2342324"]}" 直接从Node发出这些命令似乎有效.我有什么隐藏的错误或事情我不知道吗? 更新:我的工作是用Ruby编写的.虽然我喜欢NodeJS并且我在Javascript方面做得更好,但我需要大量的NPM中仍然无法提供的图书馆,例如与Twitter和Facebook(Twitter和Koala宝石,与Node没有任何可比性)进行交流.所以我想从我的NodeJS服务启动Ruby Jobs. 到目前为止,我使用的东西看起来类似于来自coffee-resque的这个功能: enqueue: (queue,func,args) -> @redis.sadd @key('queues'),queue @redis.rpush @key('queue',queue),JSON.stringify class: func,args: args || [] 这里: job = JSON.stringify class: 'Hello::FacebookFriends' args: [user_id,fb.id] @redis_client.multi() .sadd('resque:w:tasks:queues','facebook') .rpush('resque:w:tasks:queue:facebook',job) .exec() 解决方法
为什么不设置一个可以解雇工作的服务呢?这将是通过网络的额外跳跃,但代码应该足够简单(例如,查看
http://www.sinatrarb.com/).
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |