redis
文章平均质量分 58
life is ftc
会的越多,不会的越多!Life is Fantastic,愿我多年之后还是从前那个少年!
展开
-
Redis学习(十三):使用哨兵自动管理主从数据库
一、什么是哨兵顾名思义,哨兵的作用就是监控Redis系统的运行状况。它的功能主要包括以下两个:监控主数据库和从数据库是否正常运行; 主数据库故障时自动将从数据库转换为主数据库,并使其他从数据库连接到新的主数据库上二、哨兵配置配置文件名称:sentinel.conf,内容如下:sentinel monitor mymaster 127.0.0.1 6379 1首先,对于一个主从数据库系统,哨兵只需要配置主数据库地址即可(后边解释),哨兵还可以同时监控多个主从数据库系统 sentin原创 2020-08-08 16:56:31 · 319 阅读 · 0 评论 -
redis知识点总结
一、redis持久化机制Redis是一个支持持久化的内存数据库,通过持久化机制把内存中的数据同步到硬盘文件来保证数据持久化。当Redis重启后通过把硬盘文件重新加载到内存,就能达到恢复数据的目的。过程:单独创建fork()一个子进程,将当前父进程的数据库数据复制到子进程的内存中,然后由子进程写入到临时文件中,持久化的过程结束了,再用这个临时文件替换上次的快照文件,然后子进程退出,内存释放。持久化方式:RDB:Redis默认的持久化方式,按照一定的时间周期策略把内存的数据以快照的形式保存到硬盘原创 2020-07-12 16:34:29 · 229 阅读 · 0 评论 -
Spring-redis:实现发布/订阅(亲测有效,欢迎提问)
原理:Spring与redis整合后,配置的监听器会对项目进行监听,每当调用RedisTemplate这个类的convertAndSend(java.lang.String channel, java.lang.Object message)方法,像指定的频道(在配置文件之中)发送一条消息,该消息就会被监听器监听到,进而实现发布订阅功能。一、导入maven依赖spring集成redis需要...原创 2019-06-03 19:10:06 · 2026 阅读 · 2 评论 -
Spring-redis 解决StringRedisSerializer序列化乱码的问题
StringRedisSerializer是用来解决字符串的乱码问题的,首先贴出redis配置文件<!-- 配置JedisPoolConfig相关参数 --> <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"> <!-- <property ...原创 2019-06-12 15:22:52 · 3070 阅读 · 0 评论 -
Redis学习(十二):主从数据库
详细配置请参考:redis主从数据库搭建一、复制的概念通过持久化功能,Redis能保证即使服务器重启也不会损失(或少量损失)数据,但是由于数据是存储在一台服务器上的,如果这台服务器出现硬盘故障,会导致数据丢失。为了避免单点故障,通常的做法是将数据库复制多个副本以部署在多个服务器上,这样即使一台服务器损坏,其他的服务器还可以正常工作。Redis提供了复制的功能,可以实现当其中一台数据库数据更...原创 2019-03-10 21:12:27 · 218 阅读 · 0 评论 -
Redis学习(十一):两种持久化方式
一、为什么需要持久化Redis的强劲性能很大程度上是因为将所有数据存储到内存中,然而当Redis重启之后,这些数据会消失。所以在一些情况下,我们希望redis在重启后数据没有丢失。将redis作为数据库使用。 将redis作为缓存服务器,二、定义redis将内存中的数据同步到硬盘之中,并且在重启后可以根据硬盘中的内容恢复数据。三、RDB方式RBD持久化是通过快照(snaps...原创 2019-03-10 17:23:09 · 206 阅读 · 0 评论 -
Redis学习(八):有序集合(Sorter Set)
一、介绍与set的区别在于“有序”二字,再集合类型的基础上都关联了一个分数(score).二、与列表的区别相同点:(1)二者都是有序的。(区别于排序)(2)二者都可以获得某一范围内的元素。不同点:(1)列表是通过链表实现的,获取靠近两端的元素速度极快,而当元素增多以后访问中间数据的速度会较慢,所以它更适合实现如:新鲜事,日志等很少访问中间元素的应用;(2)有序集合是...原创 2019-03-04 15:53:39 · 276 阅读 · 0 评论 -
Redis学习(七):集合类型(Set)
一、介绍集合中的每个元素都是不同的,且没有顺序。集合在redis内部是使用值为空的散列表实现的。所以向集合中加入、删除元素、判断某个元素是否存在的时间复杂度都是O(1).多个集合之间还可以进行交集、并集和差集运算。二、和列表类型的对比三、适用场景1.多条件查询四、命令1.增加/删除元素SADD key member [ member ... ]:返回成功加入的元...原创 2019-03-04 10:32:45 · 226 阅读 · 0 评论 -
Redis学习(六):列表类型(List)
一、介绍列表类型可以存储一个有序的字符串列表,常用的操作是向列表的两端添加元素,或者获取列表的一个片段;与散列类型最多能容纳的字段数量相同,一个列表类型键最多能容纳2^32-1个元素。二、优缺点优点:列表类型的内部是使用(double linked list)双向链表实现的,所以像列表两端添加元素的时间复杂度为O(1),获取越接近两端的元素越快。(意味着即使列表中的数据量再大,获取...原创 2019-03-03 17:48:35 · 218 阅读 · 0 评论 -
Redis学习(十):任务队列、"发布/订阅"模式
一、任务队列1.介绍任务队列顾名思义就是传递任务的队列,与任务队列进行交互的角色有两类,一类是生产者(producer),一类是消费者(consumer).生产者会将需要处理的任务放到任务队列中,而消费者则不断的从任务队列中读取任务并执行。现实生活中有很多这样的例子:例如著名的面包店故事:厨师将做好的面包放到橱窗中,顾客通过购买从橱窗中拿到面包来吃。2.任务队列的优势松耦合:生产者...原创 2019-03-08 17:48:53 · 326 阅读 · 0 评论 -
Redis学习(九):Redis进阶
一、事务定义:Redis中的事务是一组命令的集合。事务同命令一样都是Redis中最小的执行单位,一个事务中的命令要么都执行,要么都不执行。采用MULTI...EXEC来进行事务控制。错误处理:语法错误:只要命令的集合中有一条命令具有语法错误,执行EXEC后直接返回错误,连语法正确的命令也不会执行。 运行错误:指在命令执行时出现的错误(例如使用散列类型的命令操作集合类型的键)。如果事务...原创 2019-03-05 23:10:11 · 347 阅读 · 0 评论 -
redis学习(五):散列数据类型学习
一、介绍redis采用字典结构以键值对存储数据,而散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射。但字段值只能是字符串,不支持其他数据类型。换句话说,散列类型不能嵌套其他的数据类型。一个散列类型最多包含2^32-1个字段。二、适用范围散列类型适合存储对象,使用对象类别和id构成键名,使用字段表示对象的属性,而字段值存储属性值。三、命令1.赋...原创 2019-03-02 13:25:20 · 197 阅读 · 0 评论 -
Redis学习(四):redis字符串类型
一、redis操作键的通用命令。EXISTS key:判断一个键是否存在DEL key:删除一个键TYPE key:判断一个键的数据类型二、字符串类型字符串类型是redis最基本的数据类型,能存储任意形式的字符串,包括二进制数据。例如:邮箱,JSON化的对象,甚至是图片。一个字符串类型的键允许存储数据的最大容量为512MBSET key value:赋值GET key ...原创 2019-03-02 12:46:39 · 197 阅读 · 0 评论 -
Redis学习(三):redis配置学习
注:采用腾讯云开发者平台进行学习(Ubuntn)。参照腾讯云开发者平台注册和使用redis配置文件位于redis安装目录之下,文件名为redis.conf语法:Redis CONFIG 命令格式如下:redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME实例redis 127.0.0.1:6379> CONF...原创 2019-02-18 16:52:48 · 168 阅读 · 0 评论 -
Redis学习(二):redis介绍
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Has...原创 2019-02-18 16:25:42 · 138 阅读 · 0 评论