中间件/Redis
Anbang713
这个作者很懒,什么都没留下…
展开
-
Redis:集群
Redis主从复制解决了读写分离,实现负载均衡的目的。哨兵机制解决了主从复制架构中当主节点宕机后,需要人为介入进行故障恢复的问题。但是随之而来的是另一个问题,Redis的每个节点都存储了所有的数据,从而导致整个架构中总数据的存储能力取决于可用存储容量最小的那个节点。于是对Redis进行集群部署,实现水平扩容也变得尤为重要。实现水平扩容的一种方案是启动多个Redis节点,然后由客户端决定每个键由哪个Redis节点存储,下次客户端读取该键时直接到该节点读取。这样当我们把整个数据分布存储在N个节点中时,每个节点原创 2020-06-26 09:25:22 · 393 阅读 · 0 评论 -
Redis:哨兵
在《Redis:主从复制》的最后,我们提到“从节点持久化”,在一个典型的主从架构的Redis系统中,从节点在整个系统中起到数据冗余备份和读写分离的作用。当主节点遇到异常中断服务后,开发者可以通过手动的方式选择一个从节点来升级为主节点,以使得系统能够继续对外提供服务。然而整个过程相对麻烦且需要人工介入,难以实现自动化。为此,Redis提供哨兵工具来实现自动化的系统监控和故障恢复功能。1. 什么是哨兵哨兵的作用就是监控Redis系统的运行状态,它的功能包括以下两个:(1)集群监控:监控主节点和从节点是否正原创 2020-06-25 09:47:30 · 262 阅读 · 0 评论 -
Redis:主从复制
如果我们只是作为个人玩玩Redis,那么单台服务器已经足够。但在实际企业的项目中,单台Redis服务器几乎是不可能的。理由有以下几个:(1)从结构上,单个Redis服务器会发生单点故障,同时一台服务器需要承受所有的请求,所以需要对数据做副本并分配在不同的服务器上。(2)从容量上,单个Redis服务器的内存容易成为存储瓶颈,所以需要进行数据分片。1. 复制复制的目的是为了避免单点故障的问题,通常的做法是将数据库复制多个副本以部署在不同的服务器上,这样即使有一台服务器出现故障,其它服务器依然可以继续提供原创 2020-06-22 20:20:38 · 267 阅读 · 0 评论 -
Redis:企业级数据备份方案
1. 持久化配置策略(1)首先是RDB的生成策略,这点用Redis默认的配置即可,比如:save 60 10000。但是如果我们希望尽可能确保说,RDB最多丢1分钟的数据,那么尽量就是每隔1分钟都生成一个快照,比如设置成:save 60 1000。个人觉得默认的配置即可,当然我们也可以根据自己的应用和业务的数据量去决定如何调整这个参数。(2)AOF持久化一定要开启,fsync的策略为everysec也没有多大问题。可能我们仅仅需要做些调整的是下面两个参数:auto-aof-rewrite-percen原创 2020-06-21 09:54:37 · 324 阅读 · 0 评论 -
Redis:持久化之AOF
在《Redis:持久化之RDB》的最后,我们说到RDB持久化存在一个问题那就是一旦Redis发送异常退出,就会丢失最后一次快照以后更改的所有数据,这可能是几秒或者更长的一个时间丢失。我们也说到如果无法忍受近几秒或者更长的数据丢失,则可以考虑使用AOF方式进行持久化。那么AOF方式又是怎样的呢?往下看。1. AOF简介RDB是通过保存数据库中键值对的数据来达到持久化的目的,而AOF则是通过保存Redis服务器所执行的写命令来记录数据库状态。比如以下命令:RDB持久化方式则是将aof-test-key1原创 2020-06-18 20:15:15 · 316 阅读 · 0 评论 -
Redis:持久化之RDB
Redis高性能的背后很大程度上是因为其将所有数据都存储在内存,然而当Redis重启后,所有存储在内存中的数据就会丢失。这时我们希望Redis能将数据从内存中以某种形式同步到磁盘中,使得重启后可以根据磁盘中的记录恢复数据,这一过程称之为持久化。Redis支持两种方式的持久化:一种是RDB方式,另一种是AOF方式。前者根据指定的规则“定时”将内存中的数据存储在磁盘上,而后者在每次执行命令后将命令本身记录下来。两种持久化方式可以单独使用其中一种,但更多场景下都是将两者一起使用。今天先说说RDB这种持久化方原创 2020-06-16 19:37:52 · 329 阅读 · 0 评论 -
Redis:五大数据类型常用命令详解
丰富的数据类型是Redis作为缓存系统的最大优势之一,区别于Memcache仅支持简单的key-value类型,Redis提供了list、set、zset、hash等数据结构的存储。注意:Redis的命令不区分大小写,但是key 严格区分大小写!!!1. 热身1.1 获取符合规则的键名列表keys patternpattern是一个支持glob风格的通配符格式,具体规则如下:符号含义?匹配一个字符*匹配任意个字符,包括0个[]匹配括号间的任一字符,可是使用原创 2020-06-15 20:31:19 · 246 阅读 · 0 评论 -
Redis:redis.conf配置文件介绍
在《Redis:简介与安装》中我们介绍了如何在Linux服务器上安装Redis,其中在Redis的解压目录下有个很重要的配置文件redis.conf不知道大家是否还有印象。在实际使用Redis的过程中,很多功能的配置都是在此文件中完成的。我们今天的重点就是说说这个配置文件里都有些什么。1. 开头说明开头部分主要描述了这个文件是干嘛的,以及Redis必须通过向redis-server传入该配置文件的路径才能启动。比如:./redis-server /path/to/redis.conf。紧接着还给出原创 2020-06-14 08:59:58 · 1635 阅读 · 0 评论 -
Redis:简介和安装
平时有接触过Redis,但一直都停留在使用上,没有做过系统的总结,所以现在静下心来去做个总结,算是做个知识梳理吧。1. 简介Redis:REmote DIctionary Server(远程字典服务),是一个开源的、高性能的、基于键值对的缓存与存储系统,通过提供多种键值数据类型来适用不同场景下的缓存和存储需求。在存储方面,Redis是基于内存运行并支持持久化的NoSQL数据库。同时Redis的很多高级功能使其能够胜任消息队列、任务队列等不同的角色。Redis官网:https://redis.io/,中原创 2020-06-09 20:38:23 · 214 阅读 · 0 评论