NoSQL
文章平均质量分 80
稳中向好_
专业外包五十年
展开
-
利用redis实现消息队列之topic模式
redis同样可以实现消息队列的发布订阅功能,发布消息者使用比较简单,订阅消息者则需要手动继承 redis.clients.jedis.JedisPubSub 这个抽象类,消费者有动作时就会回调这个实现类的方法。新建两个maven工程,生产者和消费者。生产者的pom文件如下<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xs原创 2018-01-11 14:33:35 · 10550 阅读 · 1 评论 -
利用redis实现消息队列之queue模式
可以利用redis存储数据类型的list类型实现消息发送与消费的一对一模式,使用lpush向list的左端推送数据(发送消息),使用rpop从右端接收数据(消费消息)。由于rpop需要周期性的从list中获取数据,可以考虑使用brpop代替rpop,brpop是一个阻塞方法,直到获取到数据。代码如下生产者的pom文件<project xmlns="http://maven.apache.o原创 2018-01-11 09:48:53 · 18637 阅读 · 0 评论 -
Jedis管道使用
java客户端与redis服务器之间使用tcp协议进行通信,客户端向服务器每发送一条语句,就会阻塞等待结果,如果有多条命令,那么这个发送语句和等待结果的时间就比较长了。管道的作用就是将这多条语句打包一起发送给服务器,这样,无论有多少条语句,都只需要一次发送,一次等待的时间就可以了。先看代码。Jedis jedis = new Jedis("192.168.229.128", 6379); //原创 2018-01-11 15:40:38 · 1187 阅读 · 0 评论 -
redis事物介绍和jedis事物操作
redis事物可以使得一组命令在执行期间不会被打断,因此事物中的这组命令也是一个原子操作。因为redis本身就是单线程的,所以redis的事物就简单很多,不像关系型数据库那样还有隔离级别的概念,我们甚至可以这样理解,redis的每条命令都是包含在一个事物中。redis的命令行操作,使用multi开启事物,使用exec提交事物。例如:127.0.0.1:6379> multiOK127.原创 2018-01-11 16:30:52 · 823 阅读 · 1 评论 -
redis持久化教程
redis的数据在运行期间都是保存在内存中,当服务器重启时,redis服务器会从磁盘中加载之前已经持久化到磁盘中的数据。而且,redis服务器突然宕机,保存在内存中的数据就会丢失,显得redis的持久化机制更为重要。redis提供了两种持久化机制。第一种是RDB方式。默认情况下,你没有做任何配置的话,redis就是使用这种方式进行持久化。基本的原理就是将当前内存中的所有数据进行快照,然后写入磁盘中...原创 2018-01-12 15:27:01 · 232 阅读 · 0 评论