![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis
Drogon Brother
这条路 我并不寂寞
展开
-
Redis主从复制配置-操作
Redis下一小节:7-5主从复配置-操作Redis主从复制配置-操作主从复制配置操作(1)修改主节点redis-6379.conf配置文件设置deamon守护进程是否开启:设置pid进程文件:默认端口设置:日志文件修改:关掉save自动策略:RDB文件重命名:配置data目录:(2)修改从节点redis-6380.co...原创 2019-04-19 21:00:23 · 1941 阅读 · 0 评论 -
Redis瑞士军刀之-pipeline
Redis下一小节:4-4发布订阅Redis瑞士军刀之-pipelinepipeline介绍:什么是流水线 与原生M操作对比 客户端实现 使用建议1、什么是流水线(1)1次网络命令通信模型(2)批量网络命令通信模型(3)什么是流水线?2、流水线的作用注意Redis命令执行时间是微妙级别的 pipeline每次批量命令条数需要控制(注意...原创 2019-04-13 00:18:50 · 337 阅读 · 0 评论 -
Redis瑞士军刀之-慢查询
Redis下一小节:4-3 Redis瑞士军刀之-pipelineRedis瑞士军刀之-慢查询慢查询了解:生命周期 两个配置 三个命令 运维经验1、生命周期生命周期四个过程:发送命令 排队 执行命令 返回结果生命周期两点说明:慢查询只发生在第3阶段 客户端超时不一定是慢查询,但慢查询是客户端超时的一个可能因素2、两个配置(1)slowlog-...原创 2019-04-13 00:11:13 · 140 阅读 · 0 评论 -
Redis 就像一把瑞士军刀
Redis下一小节:4-2 Redis瑞士军刀之-慢查询Redis 就像一把瑞士军刀Redis基本上什么都能做,功能非常丰富,所以说Redis就像一把瑞士军刀。下面简单来介绍下Redis这把瑞士军刀:1、慢查询 监控Redis中命令执行的性能瓶颈,找出慢查询命令。2、pipeline 流水线能节省多次网络传输时间,提高客户端响应速度。...原创 2019-04-13 00:01:10 · 192 阅读 · 0 评论 -
Redis瑞士军刀之-GEO
Redis下一小节:5-1 Redis持久化取舍与选择课程目录Redis瑞士军刀之-GEOGEO:GEO是什么 5个城市经纬度 相关命令 相关说明 1、GEO是什么?(1)GEO是什么(2)应用场景 微信摇一摇: 酒店的距离定位:2、5个城市经纬度3、相关命令(1)geoadd(2)geopos...原创 2019-04-15 23:28:24 · 172 阅读 · 0 评论 -
Redis瑞士军刀之-HyperLogLog
Redis下一小节:4-7GEORedis瑞士军刀之-HyperLogLogHyperLogLog:新的数据结构? 三个命令 内存消耗 使用经验1、新的数据结构?基于HyperLogLog算法:极小空间完成独立用户数量统计。HyperLogLog本质还是字符串127.0.0.1:6379> type usersstringHyperLogLog用户数...原创 2019-04-15 23:22:16 · 161 阅读 · 0 评论 -
Redis瑞士军刀之-发布订阅
Redis下一小节:4-5BitmapRedis瑞士军刀之-发布订阅发布订阅:角色 API 模型 发布订阅与消息队列1、角色 发布者publisher 订阅者subscriber 频道channel2、API(1)publish127.0.0.1:6379> publish sohu:tv hello(...原创 2019-04-15 23:15:24 · 143 阅读 · 0 评论 -
Redis瑞士军刀之-Bitmap
Redis下一小节:4-6 HyperLogLogRedis瑞士军刀之-BitmapBitmap:位图 相关命令 独立用户统计1、位图b的ASCII=98 对应的二进制为:01100010i的ASCII=105 对应的二进制为:01101001g的ASCII=103 对应的二进制为:01100111redi-cli操作:获取big 偏移量offset二进制对应...原创 2019-04-15 22:58:00 · 310 阅读 · 0 评论 -
Redis set
Redis下一小节:2-10zsetRedis set1、set特点(1)set集合结构 sadd movie操作: sadd his操作:set集合存在重复元素会插入失败 srem key music操作:sinter:交集 | sdiff:差集 | sunion:并集(2)set特点无序 无重复 ...原创 2019-04-08 22:15:26 · 422 阅读 · 0 评论 -
Redis java客户端Jedis
Redis下一小节:4-1 Redis Java客户端Redis java客户端Jedis获取Jedis Jedis基本使用 Jedis连接池使用1、Jedis是什么?redis-cli官方提供的客户端:可以看成shell的java客户端:Jedis操作:Jedis操作其实就是java操作:2、Jedis Maven依赖包3、Jedis直连...原创 2019-04-11 22:41:19 · 556 阅读 · 0 评论 -
Redis zset
Redis下一小节:3-1 Redis Java客户端Redis zset1、zset特点(1)zset有序集合结构(2)set集合 VS zset有序集合2、zset重要API(1)zadd 执行zadd user:1:ranking 225 tom操作:(2)zrem 执行zrem user:1:ranki...原创 2019-04-09 23:24:25 · 1747 阅读 · 0 评论 -
Redis持久化取舍与选择的课程目录
Redis下一小节:5-2 Redis持久化的作用Redis持久化取舍与选择的课程目录1、持久化作用2、RDB3、AOF4、RDB和AOF的抉择原创 2019-04-16 21:51:12 · 116 阅读 · 0 评论 -
Redis持久化的作用
Redis下一小节:5-3RDBRedis持久化的作用持久化作用:什么是持久化 持久化实现方式1、什么是持久化Redis所有数据都是保存在内存中,对数据的更新将异步地保存到磁盘上去。2、持久化实现方式(1)快照 MySQL Dump Redis RDB(2)写日志 MySQL binlog Red...原创 2019-04-16 21:55:53 · 588 阅读 · 0 评论 -
Redis主从复制配置-介绍
Redis下一小节:7-4主从复配置-操作Redis主从复制配置-介绍1、主从复制配置的两种方式(1)slaveof命令 slave执行复制命令: slave执行取消复制命令: 127.0.0.1:6380这台redis执行slaveof no one之后,它就不会成为任何redis的slave节点,也会断掉跟之前mast...原创 2019-04-19 20:52:09 · 421 阅读 · 0 评论 -
Redis 什么是主从复制
Redis下一小节:7-3主从复配置-介绍Redis 什么是主从复制1、Redis单机部署有什么问题?(1)机器故障 服务器挂掉了; CPU坏掉了; 主板坏了啊;(2)容量瓶颈 比如我们服务器有16G内存,但是我们有一个需求需要60G内存,显然不能满足我们的需求,那是不是我们就去买更好的机器呢?比如可以买128...原创 2019-04-19 20:35:32 · 496 阅读 · 1 评论 -
Redis 复制原理与优化
Redis下一小节:7-2什么是主从复制Redis 复制原理与优化1、什么是主从复制2、复制的配置3、全量复制和部分复制4、故障处理5、开发运维常见的问题...原创 2019-04-19 20:27:43 · 225 阅读 · 0 评论 -
Redis 常见问题之-子进程开销与优化
Redis下一小节:6-4Redis常见问题之-AOF阻塞Redis 常见问题之-子进程开销与优化1、CPU(1)开销 RDB和AOF文件生成,属于CPU密集型(2)优化 (1)不做CPU绑定,也就是不把redis进程绑定在一个CPU上; (2)不和CPU密集型服务部署在一起;2、内存(1)开销 fork内存...原创 2019-04-19 20:23:44 · 779 阅读 · 0 评论 -
Redis 常见问题之-AOF阻塞
Redis下一小节:7-1Redis复制原理与优化Redis 常见问题之-AOF阻塞1、AOF追加阻塞如果AOF文件fsync同步时间大于2s,Redis主进程就会阻塞;如果AOF文件fsync同步时间小于2s,Redis主进程就会返回;其实这样做的目的是为了保证文件安全性的一种策略。AOF追加阻塞会产生两位问题:(1)fsync大于2s时候,会阻塞redi...原创 2019-04-19 20:15:14 · 2930 阅读 · 0 评论 -
Redis 常见问题之-fork操作
Redis下一小节:6-3 Redis常见问题之-子进程开销与优化Redis 常见问题之-fork操作1、fork操作(1)同步操作 虽然fork同步操作是非常快的,但是如果需要同步的数据量过大,fork就会阻塞redis主进程。(2)与内存量息息相关 内存越大,fork同步数据耗时越长,当然也跟服务器有关,服务器有物理机,也有虚拟机。(3)in...原创 2019-04-19 20:07:56 · 7736 阅读 · 0 评论 -
Redis 常见问题
Redis下一小节:6-2 Redis常见问题之-fork操作Redis 常见问题开发运维常见问题:1、fork操作问题2、进程外开销问题3、AOF追加阻塞问题4、单机多实例部署问题...原创 2019-04-19 20:02:32 · 471 阅读 · 0 评论 -
Redis AOF
Redis下一小节:6-1 Redis常见问题Redis AOFAOF:RDB现存问题 AOF三种策略 什么是AOF AOF重写1、RDB现存问题(1)耗时、耗性能如果Redis data非常大,持久化RDB是非常耗时、耗性能的。(2)不可控、丢失数据你不能保证Redis宕机时数据不丢失。2、AOF运行原理(1)AOF文件创建(2)Red...原创 2019-04-17 22:11:36 · 2012 阅读 · 0 评论 -
Redis RDB
Redis下一小节:5-4 AOFRedis RDBRDB:什么是RDB 触发机制-主要三种方式 触发机制-不容忽视的方式 试验1、什么是RDB2、触发机制-主要三种方式(1)save(同步)文件策略—》如果存在老的RDB文件,新的RDB文件会替换老的时间复杂度—》O(n)(2)bgsave(异步)fock子进程在极少的情况下会阻塞...原创 2019-04-16 22:03:24 · 985 阅读 · 0 评论 -
Redis list(2)
Redis下一小节:2-9setRedis list(2)1、list中重要的API(1)linsert(2)lpop(3)rpop(4)lrem lrem listkey 0 a 删除所有等于a的元素: 删除之后的图结构: lrem listkey -1 c 从右边删除1个c元素...原创 2019-04-07 23:44:05 · 241 阅读 · 0 评论 -
Redis list(1)
Redis下一小节:2-8list(2)Redis list(1)1、list特点(1)list列表结构List双向链表:List相关操作:llen = 6 计算list列表长度lrem 1 删除list指定元素lrange 获取list子列表index 5 获取指定索引位置列表值(2)list特点有序 可以重复 左右两位插入、删除2...原创 2019-04-07 23:36:01 · 160 阅读 · 0 评论 -
Redis特性目录
Redis下一小节:1-5 特性一:速度快Redis特性目录1、速度快2、持久化3、多种数据结构4、支持多种编辑语言5、功能丰富6、简单7、主从复制8、高可用分布式...原创 2019-03-23 22:37:04 · 162 阅读 · 0 评论 -
谁在使用Redis?
Redis下一小节:1-4 Redis特性目录谁在使用Redis?哪些公司在使用Redis原创 2019-03-23 22:34:14 · 427 阅读 · 0 评论 -
Redis初识
Redis下一小节:1-3 谁在使用Redis?Redis初识1、Redis是什么(1)开源Redis源代码是开放的,可以从github下载,底层使用的是C语言,初期版本代码量只用23000行。(2)基于键值的存储服务系统(3)多种数据结构(4)高性能、功能丰富(5)Redis前世今生 Redis开创人:...原创 2019-03-23 22:32:21 · 200 阅读 · 0 评论 -
Redis导学
Redis下一小节:1-2 Redis初识1-1 Redis导学1、Redis优势Redis就像一把瑞士军刀(1)高性能Key-Value服务器 官网:redis能达到10WQPS(2)支持多种数据结构 String、List、Hash、Set、Sorted Set(3)丰富的功能 Pipeline、Bitm...原创 2019-03-23 22:28:02 · 126 阅读 · 0 评论 -
Redis典型应用场景
Redis下一小节:1-14 Redis三种启动方式介绍Redis典型应用场景Redis典型应用场景(1)缓存系统【1】表示客户端发请求到App Server(Apache or Nginx代理服务器)【2】表示App Server请求Redis缓存数据库,如果Redis缓存数据库有值,则直接执行步骤【3.1】返回,否则执行【3.2】请求Storage(Mysql、Orac...原创 2019-03-26 23:15:50 · 2562 阅读 · 0 评论 -
Redis三种启动方式介绍
Redis下一小节:1-15Redis常用配置Redis三种启动方式介绍1、Redis安装(1)linux环境下安装Redis下载Redis安装包:$ wget http://download.redis.io/releases/redis-5.0.4.tar.gz解压缩Redis安装包:$ tar xzf redis-5.0.4.tar.gz进入Redis目录:...原创 2019-03-26 23:10:14 · 7562 阅读 · 0 评论 -
Redis特性八:高可用、分布式
Redis下一小节:1-13 Redis典型使用场景Redis特性八:高可用、分布式原创 2019-03-26 00:06:51 · 190 阅读 · 0 评论 -
Redis特性七:主从复制
Redis下一小节:1-12 特性八:高可用分布式Redis特性七:主从复制主从复制是Redis保证高可用的基础原创 2019-03-26 00:03:30 · 146 阅读 · 0 评论 -
Redis特性六:简单
Redis下一小节:1-11 特性七:复制Redis特性六:简单1、Redis单机核心代码数少带着问题去看Redis源代码会简单很多2、Redis不依赖外部库Memcache就依赖与外部库:libevent3、Redis是单线程模型单线程意味着无论是客户端还是服务端开发都会相对容易一些。...原创 2019-03-26 00:00:57 · 149 阅读 · 0 评论 -
Redis特性一:速度快
Redis下一小节:1-6 特性二:持久化Redis特性一:速度快1、Redis速度快原因官网声称Redis能达到:10W QPS数据存储在内存 C语言是最接近操作系统语言之一 线程模型使用的是单线程2、Redis速度快主要原因主要原因:内存Register寄存器 L1 Cache 一级缓存 L2 Cache 二级缓存 Main Memory 主存...原创 2019-03-23 22:40:28 · 261 阅读 · 0 评论 -
Redis特性二:持久化(断电不丢失数据)
Redis下一小节:1-7 特性三:数据结构Redis特性二:持久化(断电不丢失数据)Redis所有数据保存在内存当中,对数据的更新将以异步方式保存到磁盘上如果发生断电,Redis会把内存数据dump到磁盘中,当Redis恢复正常的时候会把dump到磁盘中的数据进行恢复。...原创 2019-03-23 22:42:29 · 3078 阅读 · 0 评论 -
Redis特性三:数据结构
Redis下一小节:1-8 特性四:多语言客户端Redis特性三:数据结构1、Redis主要五种数据结构:2、Redis另外三种数据结构:(1)Bitmap:位图 布隆过滤器 应用场景:URL排重、电子邮件地址过滤等。(2)HyberLogLog:超小内存唯一值计数 12k大小,主要用来计数。(3)GEO...原创 2019-03-23 22:45:28 · 251 阅读 · 0 评论 -
Redis hash(2)
Redis下一小节:2-7list(1)Redis hash(2)1、使用hash结构进行实战(1)实战一(2)实战二2、hash中重要的APIhgetall、hvals、hkeys如果某个key中存在的属性比较多的时候(比如key=user:2:info的属性个数有一万个),请小心使用hgetall3、string vs hash...原创 2019-04-07 23:30:46 · 169 阅读 · 0 评论 -
Redis hash(1)
Redis下一小节:2-6 hash(2)Redis hash(1)1、hash特点(1)哈希键值结构新加属性之后哈希键值结构:可以把hash key看做一张表:(2)hash特点Mapmap结构 Small redis Field不能相同,value可以相同2、hash中重要的API(1)hget、hset、hdel(2)hexist...原创 2019-04-07 23:23:14 · 380 阅读 · 0 评论 -
Redis字符串
Redis下一小节:2-5 hash(1)Redis字符串1、字符串键值结构key是唯一的,不能重复;value数据类型可以是多种,比如:字符串、数字、二进制,只是内部把数字、二进制数据转化为字符串;value也可以是一个JSON字符串;value还可以是序列化对象;value可以存储最大的数据大小为:512MB;2、字符串使用场景(1)缓存(2)计数器...原创 2019-04-07 18:50:19 · 206 阅读 · 0 评论 -
Redis单线程
Redis下一小节:2-4字符串Redis单线程1、Redis单线程模型图每个命令执行都需要等待前面的命令执行完成之后。2、Redis单线程为什么这么快?内核响应速度为100纳秒(1)纯内存(2)非阻塞IO epoll模型 且 自身实现了一个event处理(3)避免线程切换和竞态消耗3、Redis单线程需要注意什么?Redis一...原创 2019-04-07 18:34:35 · 304 阅读 · 0 评论