redis如何实现异步队列
redis实现异步队列的方法:
1.一般使用list结构作为队列,rpush生产消息,lpop消费消息,当lpop没有消息时,需适当sleep一会再重试。
示例:
publicclassRedisClient{@Resource
privateJedisPooljedisPool;
/**
*向List头部追加记录
*@paramkey
*@paramvalue
*@return记录总数
*/
publicvoidrpush(Stringkey,Stringvalue){
Jedisjedis=null;
try{
jedis=jedisPool.getResource();
jedis.rpush(key,value);
}catch(Exceptione){
throwe;
}finally{
if(jedis!=null){
jedis.close();
}
}
}
}
//controller写一个写入队列的方法
@PostMapping("insert")
publicvoidsetList(@RequestBodyQueueTestqueueTest){
System.out.println("塞入一条数据");
redisClient.rpush("queueTest",JSON.toJSONString(queueTest));
}
版权声明
本文仅代表作者观点,不代表米安网络立场。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。