10分钟彻底理解Redis持久化和主从复制
摘要:什么是 Redis 持久化? Redis 作为一个键值对内存数据库(NoSQL),数据都存储在内存当中,在处理客户端请求时,所有操作都在内存当中进行,如下所示: 这样做有什么问题呢?其实,只要稍微有点计算机基础知识的人都知道,存储在内存当中的数据,只要服务器关机(各种原因引起的),内存中的数据就会消
阅读全文
使用Redis实现一个分布式锁---怎么保证幂等性?
摘要:在最近的一次业务升级中,遇到这样一个问题,我们设计了新的账户体系,需要在用户将应用升级之后将原来账户的数据手动的同步过来,就是需要用户自己去触发同步按钮进行同步,因为有些数据是用户存在自己本地的。那么在这个过程中就存在一个问题,要是因为网络的问题,用户重复点击了这个按钮怎么办?就算我们在客户端做了一
阅读全文
Redis高可用哨兵原理
摘要:Redis 中为了实现高可用采用了如下两个方式: 主从复制数据。 采用哨兵监控数据节点的运行情况,一旦主节点出现问题由从节点顶上继续进行服务。 主从复制数据。 采用哨兵监控数据节点的运行情况,一旦主节点出现问题由从节点顶上继续进行服务。 主从复制 Redis 中主从节点复制数据有全量复制和部分复制之
阅读全文
为什么单线程的Redis却能支撑高并发? ---------- I/O 多路复用
摘要:几种 I/O 模型 为什么 Redis 中要使用 I/O 多路复用这种技术呢?首先,Redis 是跑在单线程中的,所有的操作都是按照顺序线性执行的。 但是由于读写操作等待用户输入或输出都是阻塞的,所以 I/O 操作在一般情况下往往不能直接返回。 这会导致某一文件的 I/O 阻塞导致整个进程无法对其他
阅读全文
一文搞定Redis高级特性与性能调优
摘要:本文适合使用 Redis 的普通开发人员,以及对 Redis 进行选型、架构设计和性能调优的架构设计人员: Redis 的数据结构和相关常用命令 数据持久化 内存管理与数据淘汰机制 Pipelining 事务与 Scripting Redis 性能调优 主从复制与集群分片 Redis Java 客户
阅读全文