首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jesque(Resque):在redis db获得所有延迟就业机会

Jesque(Resque):在redis db获得所有延迟就业机会
EN

Stack Overflow用户
提问于 2015-01-08 07:59:06
回答 1查看 1.2K关注 0票数 0

杰斯克是我想使用的一个很好的工具。

Jesque是Resque在Java中的一个实现。它与RubyandNode.js(Coffee)实现完全可互操作。 Jesque是一个Maven项目,依赖于Jedis连接到Redis,Jackson通过映射到/从JSON和SLF4J进行日志记录。

但在此之前,我需要更多的信息。在杰斯克也可以检索所有开放的工作吗?这一信息可能对我的名字和脏的重新启动有用。在脏关机之后,如果任何其他应用程序已经完成了相同的任务或处于队列中,则检查其他分布式应用程序中的所有剩余作业可能是有用的。这个是可能的吗?我想避免,这项工作已经完成了两次或更多次,因为负载平衡器后面可能有几个应用程序,如果原始客户端没有得到OK或失败反馈,他会再次尝试,因此有可能在几个应用程序中有几个相同的工作( loadbalancer!)。

我使用Java,所以也可以使用另一个REDIS DB客户端工具亲自查看redis db。这将是我的第二个选择,如果没有机会这样做的杰斯克。有人知道一个好的redis db客户端的Java吗?

EN

回答 1

Stack Overflow用户

发布于 2015-07-03 07:42:31

我终于找到了它的工作方式,我想在这里把它记录下来。有一个由QueueInfoDAORedisImpl实现的接口‘QueueInfoDAORedisImpl’。

代码语言:javascript
复制
this.jedisPool = new JedisPool(jesqueConfig.getHost());
this.queueInfoDAORedisImpl = new net.greghaines.jesque.meta.dao.impl.QueueInfoDAORedisImpl(jesqueConfig, jedisPool);
List<QueueInfo> queueInfos = queueInfoDAORedisImpl.getQueueInfos();

        for (QueueInfo queueInfo  : queueInfos) {
            //here are some QueueInfos like name or size
            for (Job queuedJob : queueInfo.getJobs()) {
                //read jobs arg,vars or do what you want
            }
        }

唯一的问题是,queueInfo.getJobs()返回null。有人知道为什么吗?DAO setJob()似乎从未被调用过,因此这个var保持为空。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27835428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档