Redis 4.x系列(二十四):Redis 内存与崩溃问题的故障诊断

  Redis 是基于内存的键值数据库,除了延迟问题之外,内存使用是另一种致命问题。

  在极少数情况下,Redis 可能遇到致命的崩溃问题,可能通过更多的操作来对问题进行诊断分析。

  Redis Memory Optimization译文:内存优化, Redis 4.x系列(十二):Redis 内存优化(使用合适的数据类型)

阅读更多

Redis 4.x系列(二十三):Redis 延迟分析、诊断、测试和优化

  Redis 服务在生产环境上线运行后,因为使用了不恰当的命令或在大数据集情况下可能出现响应客户端延迟问题;Redis 是单线程快速处理请求,在亚微秒范围内,若现现了延迟则其它所有客户端的请求都将进入等待,这是无法接受的。

  本篇对延迟原因进行分析诊断,对服务器环境进行延迟测试并提供优化措施。官方相关资料Redis 延迟问题诊断:Redis latency problems troubleshootingRedis 延迟监控框架:Redis latency monitoring framework

阅读更多

Redis 4.x系列(二十二):Redis 健康检查与慢速日志

  Redis 服务上线后,难免会出现故障需要诊断修复。

  服务器日常运维需要进行健康检查,日常的健康检查可以在故障发现之前给运维管理人员提前预警,可以了解发生了什么,服务器的各项指标情况;可以使用SLOWLOG命令来识别慢速命令或慢操作等。当产生故障时就是到了最糟糕的情况。

阅读更多

Redis 4.x系列(二十):Redis 配置和管理(部署/备份/恢复/内存监控/客户端)

  Redis 服务上线后,日常的运维和管理同样非常重要。Redis 服务自带了使用最广泛的管理工具redis-cli,在Linux环境下熟练使用该管理工具是非常必要的。

  Redis 运维和管理还需要关注数据备份和恢复,数据迁移,对 Redis 实例内存指标的监控等。

  官方文档:Redis Administration,官方同步译文:Redis 的管理

阅读更多

Redis 4.x系列(十九):Redis 生产环境部署和优化

  Redis 部署个测试或者测开环境是非常简单的,但如果部署生产环境,则需要考虑更多的因素。

  Redis 生产环境几乎都是部署在基于 Linux 操作系统的服务器上,需要考虑操作系统级别优化、还有客户端连接参数、Redis 安全、内存策略、日志配置、基准测试等。

  这篇文章持续了一个多星期,查了 N 多资料,虽然只是几个优化参数的设置,但有必要深入理解其含义,涉及到对 Linux 底层相关概念的理解,挺费劲的,终于成章。

阅读更多

Redis 4.x系列(十八):Redis Clstuer(高扩展-分片集群模式)

  Redis 可存储数据量受限于内存容量,单实例存储了大量数据(通常 16G 以上)的处理能力就会遇到瓶颈, 在进行持久化或主从复制时, 会越来越多地出现诸如延迟等的问题。针对这种情况,就需要通过部署多节点的 Redis 集群来存储大量的数据,可以将数据集通过分区的方式分布到多个 Redis 主实例中。

  Redis 从 3.0 版本开始支持 Redis Cluster(集群),提供了数据在 Redis 节点之间自动分片

阅读更多

Redis 4.x系列(十七):Redis Sentinel(高可用-主从切换哨兵模式)

  简单的复制机制并不能保证高可用,若仅仅只配置了master-slave复制,当 master无法提高服务时,整个 Redis 服务就停了,slave 无法接替 master 继续提供服务。

  Redis 为实现高可用提供了基于复制机制 的 **Sentinel(哨兵)**模式解决方案。Redis Sentinel DocumentationRedis 的 Sentinel 文档

阅读更多