jesque

聊聊redis的数据结构的应用

风流意气都作罢 提交于 2019-12-06 02:12:50
序 本文主要研究一下redis的数据结构的应用 string 最常用的就是incr操作,比如可以用来维护用户在某个抽奖活动的剩余抽奖次数 setnx方法可以用来实现分布式锁 hashmap 可以用来存储session,作为分布式session的一个实现方案 可以用来存储用户购物车,value值存储的key为物品,value为其数量 set set可以用来存储每个标签对应的文章id 也可以用来存储每个文章的已投票用户id,通过add返回值可以判断该值之前是否已经存在 zset zset可以用来存储文章的得票数,使用得票数作为score,使用zset排序得出投票最高的前N篇文章 或者用来存储最近登录的用户id,使用时间作为score,使用zset排序得出最近登录的前N个用户id 也可以存储用户最近浏览的物品,使用时间作为score,使用zset排序得出用户最近浏览的前N个物品 也可以存储物品最近浏览的用户,使用时间作为score,使用zset排序得出最近浏览该物品的前N个用户 list 可以作为简单的消息队列,通过list的lpush以及brpop作为消息队列的入队及消费的操作 hyperloglog 用来粗略统计网站的每日UV geo( 底层使用zset ) 使用geo来存储poi信息,比如存储门店的经纬度,之后可以根据半径查询附件的门店信息 bitmaps( 底层是string结构

聊聊jesque在redis中的数据结构

只谈情不闲聊 提交于 2019-12-05 05:47:14
序 本文主要介绍一下jesque在redis的存储结构 示例配置 namespace=demo listen-queue=demoqueue 启动时的reids对象 127.0.0.1:6379> keys * 1) "demo:worker:Mars.local:3820-3:JAVA_DYNAMIC_QUEUES,demoqueue:started" 2) "demo:worker:Mars.local:3820-1:JAVA_DYNAMIC_QUEUES,demoqueue:started" 3) "demo:worker:Mars.local:3820-0:JAVA_DYNAMIC_QUEUES,demoqueue:started" 4) "demo:workers" 5) "demo:worker:Mars.local:3820-2:JAVA_DYNAMIC_QUEUES,demoqueue:started" 6) "demo:worker:Mars.local:3820-4:JAVA_DYNAMIC_QUEUES,demoqueue:started" 127.0.0.1:6379> type demo:workers set 127.0.0.1:6379> smembers demo:workers 1) "Mars.local:3820-4:JAVA_DYNAMIC

Running async jobs in dropwizard, and polling their status

跟風遠走 提交于 2019-11-30 20:02:32
问题 In dropwizard, I need to implement asynchronous jobs and poll their status. I have 2 endpoints for this in resource: @Path("/jobs") @Component public class MyController { @POST @Produces(MediaType.APPLICATION_JSON) public String startJob(@Valid MyRequest request) { return 1111; } @GET @Path("/{jobId}") @Produces(MediaType.APPLICATION_JSON) public JobStatus getJobStatus(@PathParam("id") String jobId) { return JobStatus.READY; } } I am considering to use quartz to start job, but only single