Middleware
共 54 篇文章
Redis分片集群
一,搭建分片集群 主从和哨兵可以解决高可用,高并发读的问题,但还有两个问题没有解决: 海量数据存储问题 高并发写的问题 使用分片集群可以解决上述问题,分片集群的特征: 集群中有多个master,每个master保存不同数据 每个master都可以有多个slave节点 master之间通过ping检测
Redis哨兵机制
一,哨兵的作用和原理 Redis提供了哨兵(Sentinel)机制来实现主从集群的自动故障恢复。哨兵的结构和作用如下: 服务状态监控: Sentinel基于心跳机制监测服务状态,每隔1秒向集群的每个实例发送ping命令: 主观下线:如果sentinel节点发现某实例未在规定时间响应,则认为该实例主观
Redis配置主从
一,搭建主从架构 1.1 主从集群结构 单节点Redis的并发能力是有上限的,要进一步提高Redis的并发能力,就需要搭建主从集群,实现读写分离。 主从集群架构如图: 1.2 准备实例和配置 在一台虚拟机开启3个实例,实例信息如下 IP port 角色 192.168.150.101 7001 ma
Redis持久化
一,RDB RDB全称:Redis Database Backup file(Redis数据备份文件),也被叫做Redis数据快照。简单来说就是把内存中的所有数据都记录到磁盘。当Redis实例故障重启后,从磁盘中读取快照文件,恢复数据。 快照文件叫RDB文件,默认保存在Redis当前运行目录。 两种
基于Canal实现缓存同步
一,数据同步策略 缓存数据同步常见方式有三种: 设置有效期:给缓存设置有效期,到期后自动删除,再次查询时更新 优点:简单。方便 缺点:时效性差,缓存过期之前可能不一致 场景:更新频率较低,时效性要求较低的业务 同步双写:在修改数据库的同时,直接修改缓存 优点:时效性强,缓存与数据库强一致 缺点:对代
OpenResty
一,安装OpenResty 安装步骤: 安装开发库 yum install -y pcre-devel openssl-devel gcc --skip-broken 安装OpenResty仓库 在Linux系统中添加OpenResty仓库,这样就可以方便未来安装或更新软件包(通过yum chec
Lua语法
一,Lua介绍 快速入门 新建hello.lua文件 touch hello.lua 添加内容 print("Hello World!") 运行 lua hello.lua
缓存问题
一,缓存一致性 我们先看下目前企业用的最多的缓存模型。缓存的通用模型有三种: Cache Aside:缓存调用者自己维护数据库与缓存的一致性。即: 查询时:命中则直接返回,未命中则查询数据库并写入缓存 更新时:更新数据库并删除缓存,查询时自然会更新缓存 Read/Write Through:数据库自
Redis内存回收
一,Redis内存回收 Redis之所以性能强,最主要的原因就是基于内存存储。然而单节点的Redis其内存大小不宜过大,会影响持久化或主从同步性能。 我们可以通过修改配置文件来设置Redis的最大内存: # 格式 # maxmemory <bytes> # 例如 maxmemory 1gb 当内存
Redis通信协议
一,RESP协议 1.1 介绍 Redis是一个CS架构的软件,通信一般分两步(不包括pipeline和Pubsub) 客户端(client)向服务端(server)发送一条命令 服务端解析并执行命令,返回响应结果给客户端 因此客户端发送命令的格式、服务端响应结果的格式必须有一个规范,这个规范就是通