
redis
jerry-89
这个作者很懒,什么都没留下…
展开
-
Redis高可用技术解决方案
Redis 的几种常见使用方式包括: Redis 单副本 Redis 多副本(主从) Redis Sentinel(哨兵) Redis Cluster Redis 自研 客户端分片 Twemproxy Codis 云服务器上的集群服务 各种使用方式的优缺点Redis 单副本Redis 单副本,采用单个 Redis 节点部署架构,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可...原创 2020-09-15 16:47:16 · 786 阅读 · 0 评论 -
Redis主从复制原理学习总结
和Mysql主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况。为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据是否是全量分为全量同步和增量同步。下图为级联结构。全量同步Redis全量复制一般发生在Slave初始化阶段,这时Slave需要将Master上的所有数据都复制一份。具体步骤如下:- 从服务器连接主服务器,发送SYNC命令;- 主服务器接收到SYNC命名后,开始执行BGSAV...原创 2020-09-15 15:33:22 · 164 阅读 · 0 评论 -
Redis常见问题和解决办法梳理
一、Redis主从复制读写分离问题1)数据复制的延迟读写分离时,master会异步的将数据复制到slave,如果这是slave发生阻塞,则会延迟master数据的写命令,造成数据不一致的情况。解决方法:可以对slave的偏移量值进行监控,如果发现某台slave的偏移量有问题,则将数据读取操作切换到master,但本身这个监控开销比较高,所以关于这个问题,大部分的情况是可以直接使用而不去考虑的。2)读到过期的数据redis在删除过期key的时候有两种策略,第一种是懒惰型策略,即只有当redis原创 2020-09-15 15:17:58 · 447 阅读 · 0 评论 -
Redis日常操作命令小结
Redis缓存服务是运维工作中比较常见的一种维护工作,下面就redis日常操作命令在此做一简单小结,以备查用:1)连接redis服务命令# redis-cli -h redis主机ip或主机域名 -p redis端口 -a redis密码 1 2 [root@redis-test01 ~]# /data/redis-4.0.1/src/redis-cli -h 192.168.10.10 -p 6379 -a redis@123 192.168.10.1原创 2020-09-15 15:07:49 · 187 阅读 · 0 评论 -
Redis数据“丢失“讨论及规避和解决的几点总结
Redis大部分应用场景是纯缓存服务,请求后端有Primary Storage的组件,如MySQL,HBase;请求Redis的键未命中,会从primary Storage中获取数据返回,同时更新Redis缓存。如果少量数据丢失,相当于请求"缓冲未命中"; 一般对业务的影响是无感知的。但现在Redis用作存储的业务场景变多,数据丢失对业务是致命的影响。下面简单讨论几个Redis常见数据"丢失"现象,以及怎么规避;数据丢失的影响- Redis存储的应用场景,数据丢失是不能接受的;- 因...原创 2020-09-15 14:42:26 · 794 阅读 · 0 评论 -
Redis缓存和MySQL数据一致性方案详解
Redis缓存和MySQL数据一致性方案详解需求起因在高并发的业务场景下,数据库大多数情况都是用户并发访问最薄弱的环节。所以,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问MySQL等数据库。这个业务场景,主要是解决读数据从Redis缓存,一般都是按照下图的流程来进行业务操作。读取缓存步骤一般没有什么问题,但是一旦涉及到数据更新:数据库和缓存更新,就容易出现缓存(Redis)和数据库(MySQL)间的数据一致性问题。不管是先写MySQL数据库转载 2020-08-07 11:08:14 · 347 阅读 · 0 评论 -
2020-08-07
作为一个内存数据库,redis在内存空间不足的时候,为了保证命中率,就会选择一定的数据淘汰策略,这篇文章主要讲解常见的几种内存淘汰策略。和我们操作系统中的页面置换算法类似。一、参数设置我们的redis数据库的最大缓存、主键失效、淘汰机制等参数都是通过配置文件来配置的。这个文件是我们的redis.config文件,我们的redis装在了/usr/local/redis目录下,所以配置文件也在这里。首先说明一下我使用的redis是5。也是目前最新的版本。1、最大内存参数关键的配置就在最下面,原创 2020-08-07 11:06:41 · 163 阅读 · 0 评论 -
监控Redis集群服务
一、基础环境安装https://pypi.python.org/packages/source/b/backports.ssl_match_hostname/backports.ssl_match_hostname-3.4.0.2.tar.gztar xvzf backports.ssl_match_hostname-3.4.0.2.tar.gz cd backports.ssl_match_h...原创 2018-04-04 15:45:29 · 302 阅读 · 0 评论 -
redis-benchmark压力测试
redis-benchmark压力测试redis-benchmark是redis官方提供的压测工具,安装好redis后,默认安装。使用简便。语法:Usage: redis-benchmark [-h ] [-p ] [-c ] [-n [-k ]模拟20个客户端,100000次请求redis-benchmark -h 192.168.1.1 -p 6379 -n 1000原创 2017-08-31 16:46:14 · 1942 阅读 · 0 评论 -
jedis和redis主从集成和遇到的问题
spring-data-redis和jedis集成代码总体结构pom.xmlproject xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/转载 2017-08-31 16:10:39 · 2804 阅读 · 0 评论 -
redis配置详解说明
##redis配置详解# Redis configuration file example.## Note that in order to read the configuration file, Redis must be# started with the file path as first argument:## ./redis-server /path/to/redis.原创 2017-08-24 10:17:11 · 1983 阅读 · 0 评论 -
redis- 4.0安装
一、单机版1、前提条件yum install gcc-c++ 2、安装redistar -zxvf redis-xxxx.tar.gz cd redis-xxxxmakemake install 3、测试Redis是否安装成功两种启动redis方式(一)前端启动 ./redis-server (二)后台启动①将redis.co原创 2017-08-08 16:06:50 · 1791 阅读 · 0 评论 -
java客户端Jedis操作Redis Sentinel 连接池
pom.xml配置 org.springframework.data spring-data-redis 1.0.2.RELEASE redis.clients jedis 2.7.0 jar compile public class JedisPoolUtil {原创 2017-09-05 11:05:04 · 1635 阅读 · 0 评论 -
Redis 的 Sentinel 文档
redis官网文档:http://www.redis.cn/topics/sentinel.htmlRedis 的 Sentinel 文档Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务:监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。提醒(Notifica转载 2017-09-05 11:07:23 · 640 阅读 · 0 评论 -
Redis Sentinel服务配置说明
1、相关配置#master 7000sentinel monitor master1 127.0.0.1 7000 2 #配置master名、ip、port、需要多少个sentinel才能判断[客观下线](2)sentinel down-after-milliseconds master-7000 30000 #配置sentinel向mast原创 2017-09-05 11:10:22 · 288 阅读 · 0 评论 -
Redis及其Sentinel配置项详细说明
一、redis.conf 配置项说明如下:1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize no2. 当redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定 pidfile /var/run/redis.pid3. 指定Red原创 2017-09-05 11:13:35 · 432 阅读 · 0 评论 -
把数据库里的大表放到REDIS中(从Mysql将数据快速导入到redis中 )
在把一个大表从 MySQL 迁移到 Redis 时,你可能会发现,每次提取、转换、导入一条数据是让人难以忍受的慢!这里有一个技巧,你可以通过使用管道把 MySQL 的输出直接输入到 redis-cli输入端,这可以使两个数据库都能以他们的最顶级速度来运行。t_loan_risk_program (658.1461G),9999204295 条 MySQL 数据导入到 Redis 的时间从 12原创 2017-09-05 14:35:31 · 13081 阅读 · 0 评论 -
REDIS复制原理
主从复制简单来说就是把一台redis数据库中的数据同步到另一台redis数据库,并且按照数据流向,数据的发送者我们称作master,数据的接受者我们称作slave(master/slave的划分并不是那么一定的,譬如B可以作为A的slave,但同时也可以作为C的master),下面就从slave和master的角度分别说明主从复制流程。首先是slave端,对于slave端来说,主从复制主要原创 2017-09-05 15:03:00 · 348 阅读 · 0 评论 -
Jedis操作
显然,经过故障转移后,主从结构已经发生了改变且主已经死亡,如果还按照之前那样写死IP的方式连接Redis的话,势必会出现错误。可以想到,在Sentinel结构下,你必须向哨兵询问来获取谁是Master。 private static final JedisSentinelPool pool; static { JedisPoolConfig jedisPoolCo原创 2017-09-05 15:11:44 · 290 阅读 · 0 评论 -
Redis Sentinel启动监控日志
Redis Sentinel启动监控系统 配置文件修改完成后,启动各监控进程即可,例如: nohup ./bin/redis-sentinel ./conf/sentinel.conf > ./log/redis-sentinel.log 2>&1 &原创 2017-09-05 15:15:51 · 2919 阅读 · 0 评论 -
redis4.0.1主从配置及Sentinel配置自动Failover
一、单机版1、前提条件yum install gcc-c++ 2、安装redistar -xf redis-4.0.1.tar.gzcd redis-xxxxmakemake install 3、测试Redis是否安装成功后台启动redis ./redis-server redis.conf 注:分别在每台机器上安装以上过程原创 2017-08-18 14:25:05 · 8268 阅读 · 0 评论 -
监控Redis集群服务
一、基础环境安装https://pypi.python.org/packages/source/b/backports.ssl_match_hostname/backports.ssl_match_hostname-3.4.0.2.tar.gztar xvzf backports.ssl_match_hostname-3.4.0.2.tar.gz cd backports.ssl_mat原创 2017-09-01 17:04:07 · 842 阅读 · 0 评论