在移动互联网,分布式、微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式,(题外话:前后端的工作职责越来越明确,现在的前端都称之为大前端,技术栈以及生态圈都...

在移动互联网,分布式、微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式,(题外话:前后端的工作职责越来越明确,现在的前端都称之为大前端,技术栈以及生态圈都...
MySQL优化 数据准备:https://dev.mysql.com/doc/index-other.html 上的sakila数据库 数据库版本:MySQL 5.5.19 ...
Redis复制、哨兵、集群 Redis实现高可用相关的技术,它们包括:持久化、复制、哨兵和集群,其主要作用和解决的问题是: 持久化:主要作用是数据备份,即将数据存储在硬盘,保...
缓存穿透、缓存击穿、缓存雪崩 1. 缓存穿透 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很...
Redis持久化 Redis的一种持久化方式叫快照(snapshotting,RDB),另一种方式是只追加文件(append-only file,AOF)。 无论重写、覆盖,...
Redis内存淘汰策略 Redis在使用内存达到某个阈值(通过maxmemory配置)的时候,就会触发内存淘汰机制,选取一些key来删除。 内存淘汰有许多策略,下面分别介绍这...
Redis事务 严格意义来讲,redis的事务和我们理解的传统数据库(如mysql)的事务是不一样的。 Redis 通过 MULTI、EXEC、WATCH 等命令来实现事务(...
Redis数据结构与操作 1. 数据类型及操作 Redis所有单个操作都是原子操作,多个操作支持事务。 1.1 String 1.2 Hash 3.3 List 3.4 Se...
Redis安装 1. 安装 1.1 编译安装 1.2 修改配置文件 1.3 报错解决 2. 使用 2.1 设置密码后连接 2.2 性能测试
Redis 1. redis 简介 redis 的数据是存在内存中的,所以读写速度非常快,因此 redis 被广泛应用于缓存方向。另外,redis 也经常用来做分布式锁。re...
复制 通过执行SLAVEOF命令、设置slaveof选项,让一个服务器去复制另一个服务器。被复制的服务器称为主服务器(master),对主服务器复制的服务器称为从服务器(sl...
服务器 1. 命令请求的执行过程 1.1 发送命令请求 下图是客户端接收并发送命令请求的过程。 1.2 读取命令请求 当客户端与服务器之间的连接套接字因为客户端的写入变得可读...
客户端 通过使用由IO多路复用技术实现的文件事件处理器,Redis服务器使用单线程单进程的方式来处理命令请求,并与多个客户端进行网络通信。 对于每个与服务器进行连接的客户端,...
事件 Redis服务器是一个事件驱动程序,服务器需要处理以下两类事件: 文件事件。file event。Redis服务器通过套接字与客户端(或其他Redis服务器)进行连接,...
AOF持久化 AOF,Append Only File AOF持久化是通过保存Redis服务器所执行的写命令来记录数据库状态的。 写入AOF文件的所有命令都是以Redis的命...
RDB持久化 将Redis服务器中的非空数据库以及它们的键值对统称为数据库状态。 Redis提供了RDB持久化功能,这个功能可以将Redis在内存中的数据库状态保存到磁盘里面...
数据库及过期策略 1. 服务器中的数据库 Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结构的db数组中,db数组的每个项都是一个red...
对象 当称呼一个数据库键为"字符串键"、"列表键"时,指的是这个键对应的值为"字符串对象"、"列表对象"。 Redis并没有直接使用前面介绍的数据结构来实现键值对数据库,而是...
压缩列表 1. 压缩列表的构成 压缩列表是Redis为了节约内存而开发,是由一系列特殊编码的连续内存块组成的顺序型数据结构。 一个压缩列表可以包含任意多个节点(entry),...
整数集合 1. 整数集合的实现 整数集合是Redis用于保存整数值的集合抽象数据结构,它可以保存类型为int16_t、int32_t、int64_t的整数值,并且保证集合中不...