Redis
eddieHoo
我们一无所成的主要原因是想的太多,而做的太少!
展开
-
如何访问Redis海量数据
目录前言事故产生分析原因解决方案前言有时候我们需要知道线上的redis的使用情况,尤其需要知道一些前缀的key值,那我们怎么去查看呢?事故产生因为我们的用户token缓存是采用了【user_token:userid】格式的key,保存用户的token的值。我们运维为了帮助开发小伙伴们查一下线上现在有多少登录用户,直接用了keys user_token...原创 2019-12-10 14:59:46 · 99 阅读 · 0 评论 -
实现分布式锁都有哪些方式?
正在上传…重新上传取消面试题 一般实现分布式锁都有哪些方式? 使用 redis 如何设计分布式锁? 使用 zk 来设计分布式锁可以吗? 这两种分布式锁的实现方式哪种效率比较高? 面试官心理分析其实一般问问题,都是这么问的,先问问你 zk,然后其实是要过度到 zk 关联的一些问题里去,比如分布式锁。因为在分布式系统开发中,分布式锁的使用场景还是很常见的...原创 2019-10-14 15:44:41 · 264 阅读 · 0 评论 -
Nginx系列2: Nginx Rewrite 规则、Nginx 防盗链、Nginx 动静分离、Nginx+keepalived 实现高可用
1. Nginx rewrite规则Rewrite规则含义就是某个URL重写成特定的URL(类似于Redirect),从某种意义上说为了美观或者对搜索引擎友好,提高收录量及排名等。语法:rewrite <regex> <replacement> [flag] 关键字 正则 替代内容 flag标记 Re...原创 2019-08-08 11:22:58 · 264 阅读 · 0 评论 -
Nginx系列1: 正向代理和反向代理、Nginx工作原理、Nginx常用命令和升级、搭建Nginx负载均衡
一、什么是正向代理、什么是反向代理1. 正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。访问google使用代理服务器2. 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请...原创 2020-12-24 12:13:27 · 202 阅读 · 0 评论 -
Redis系列10: 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级
一、缓存雪崩缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间(例如:我们设置缓存时采用了相同的过期时间,在同一时刻出现大面积的缓存过期),所有原本应该访问缓存的请求都去查询数据库了,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。缓存正常从Redis中获取,示意图如下:缓存失效瞬间示意图如下:缓...原创 2019-08-08 11:03:11 · 113 阅读 · 0 评论 -
Redis系列9: redis集群高可用
Redis集群的概念: RedisCluster是redis的分布式解决方案,在3.0版本后推出的方案,有效地解决了Redis分布式的需求,当一个服务挂了可以快速的切换到另外一个服务,当遇到单机内存、并发等瓶颈时,可使用此方案来解决这些问题一、分布式数据库概念1.分布式数据库把整个数据按分区规则映射到多个节点,即把数据划分到多个节点上,每个节点负责整体数据的一个子集。比如我们库有9...原创 2019-08-08 10:58:18 · 171 阅读 · 0 评论 -
Redis系列8: redis主从复制和哨兵
一、Redis主从复制主从复制:主节点负责写数据,从节点负责读数据,主节点定期把数据同步到从节点保证数据的一致性1. 主从复制的相关操作a,配置主从复制方式一、新增redis6380.conf, 加入 slaveof 192.168.152.1286379, 在6379启动完后再启6380,完成配置;b,配置主从复制方式二、redis-server --slaveof 192.16...原创 2019-08-08 10:53:45 · 111 阅读 · 0 评论 -
Redis系列7: redis持久化
redis支持RDB和AOF两种持久化机制,持久化可以避免因进程退出而造成数据丢失一、RDB持久化RDB持久化把当前进程数据生成快照(.rdb)文件保存到硬盘的过程,有手动触发和自动触发手动触发有save和bgsave两命令save命令:阻塞当前Redis,直到RDB持久化过程完成为止,若内存实例比较大会造成长时间阻塞,线上环境不建议用它bgsave命令:redis进程执行fork操...原创 2019-08-08 10:44:00 · 90 阅读 · 0 评论 -
Redis系列6: redis相关功能
一、 慢查询原因分析与mysql一样:当执行时间超过阀值,会将发生时间耗时的命令记录redis命令生命周期:发送 排队 执行 返回慢查询只统计第3个执行步骤的时间预设阀值:两种方式,默认为10毫秒1,动态设置6379:> config set slowlog-log-slower-than 10000 //10毫秒10000微秒使用config set完后,若想将配置持久化保...原创 2019-08-08 10:41:47 · 1027 阅读 · 0 评论 -
Redis系列5: redis键管理和数据库管理
一、redis键管理1 键重命名rename oldKey newKey //若oldKey之前存在则被覆盖set name james ;set name1 mike //数据初始化renamenx name name1 //重命名失败,只有当name1不存在才能改名2 返回随机键randomkey //返回随机键3 键过期expire name:03 20 //键n...原创 2019-08-08 09:58:06 · 169 阅读 · 0 评论 -
Redis系列4: redis支持的数据类型
一、字符串<String>1.字符串类型:实际上可以是字符串(包括XML JSON),还有数字(整形 浮点数),二进制(图片 音频 视频),最大不能超过512MB2.设值命令:set name lgs ex 10//10秒后过期 px 10000 毫秒过期setnx name lgs //不存在键name时才能设置,返回1设置成功;存在的话失败0se...原创 2019-08-08 09:52:04 · 326 阅读 · 0 评论 -
Redis系列3: redis常用命令
全局命令keys *查看所有键dbsize查看的是当前所在redis数据库的键总数 如果存在大量键,线上禁止使用此指令exists key检查键是否存在,存在返回1,不存在返回0del key删除键,返回删除键个数,删除不存在键返回0expire key seconds设置键过期的时间,单位是秒, //set name lgs expire name...原创 2019-08-08 09:46:13 · 106 阅读 · 0 评论 -
Redis系列2: redis介绍
一、什么是redis、redis有哪些特性、redis有哪些应用场景、redis的版本1. 什么是redisredis是一种基于键值对(key-value)数据库,其中value可以为string、hash、list、set、zset等多种数据结构,可以满足很多应用场景。还提供了键过期,发布订阅,事务,流水线,等附加功能,流水线: Redis 的流水线功能允许客户端一次将多个命令请求发...原创 2019-08-08 09:39:10 · 117 阅读 · 0 评论