07 2022 档案
摘要:1.为什么需要分片集群?它解决了什么问题? Redis从单个节点的架构方式演变到主从模式,提高了数据的可靠性以及相对较弱的高可用性;从主从模式到哨兵模式将高可用性提升到了一个新的高地。但是无论是主从还是哨兵模式下的集群,其实都是单个节点在处理客户端的命令,也即是说主节点拥有着所有的数据。那么如果数据
阅读全文
摘要:Sentinel(哨岗、哨兵)是Redis的主从架构的高可用性解决方案:由一个或多个Sentinel实例(instance)组成的Sentinel系统(system)监视任意多个Redis主节点,以及这些主节点下的所有从节点,当主节点进入下线状态时,自动将该主节点的从节点晋升为主节点,然后由新的主节
阅读全文
摘要:1.为什么需要集群? 互联网思维一向讲究的是三高,即高并发,高可用,高性能。高并发:系统能够同时并行处理的请求,主要度量指标有响应延时,吞吐量,每秒查询处理,每秒事务处理,并发用户等;高可用:当系统某些节点故障时,系统依然可以对外提供服务,正常处理请求;高性能:程序的处理速度快,资源消耗最低(CPU
阅读全文
摘要:前言 Redis之所以足够快,一部分的原因是它的数据都是基于内存存储的。虽然Redis更多的是作为一个旁路缓存【先在redis中查询,查询不到数据的时候,在查询持久化数据库】来使用。如果说服务器一旦宕机,内存中的数据就会全部丢失,即便是后端服务可以通过查询持久化数据库进行恢复,但是对于数据库来说压力
阅读全文
摘要:Redis到底有多快? redis到底有多快,可以通过 redis-benchmark 脚本进行基准测试。redis官方的性能基准测试报告 Redis为什么这么快? redis之所以这么快,其实是一个综合性的结果。而能够支持其高性能的主要有以下几个点: 基于内存 redis的数据都保存在内存中,在接
阅读全文
摘要:BIO模型 在Linux中,默认情况下所有socket都是阻塞模式。用户线程调用系统函数read()【system call】,内核开始准备数据(从磁盘/网络获取数据),内核准备数据完成后,用户线程完成数据从内核拷贝到用户空间的应用程序缓冲区,数据拷贝完成后,请求才返回。从发起read请求到完成内核
阅读全文