更新时间:2024-11-26 GMT+08:00

Redis单机实例

Redis单机实例为单节点架构,不支持数据持久化,适用于不要求数据可靠性的缓存业务场景。

  • DCS新建局点已下线Redis 3.0实例,存量局点可以继续使用Redis 3.0。建议使用Redis 4.0及以上版本。
  • 不支持Redis版本的升级,例如,不支持Redis 4.0单机升级为Redis 5.0单机实例。如果需要使用高版本Redis单机实例,建议重新创建高版本Redis单机实例,然后将原有Redis实例的数据迁移到高版本实例上。
  • 单机实例无法保证数据持久性,且不支持数据自动或手动备份,选用前请务必确认风险。

单机实例特点

  1. 系统资源消耗低,支持高QPS

    单机实例不涉及数据同步、数据持久化所需消耗的系统开销,因此能够支撑更高的并发。Redis单机实例QPS达到5万以上。

  2. 进程监控,故障后自动恢复

    DCS部署了业务高可用探测,单机实例故障后,30秒内会重启一个新的进程,恢复业务。

  3. 即开即用,数据不做持久化

    单机实例开启后不涉及数据加载,即开即用。如果服务QPS较高,可以考虑进行数据预热,避免给后端数据库产生较大的并发冲击。

  4. 低成本,适用于开发测试

    单机实例各种规格的成本相对主备减少40%以上。适用于开发、测试环境搭建。

总体说来,单机实例支持读写高并发,但不做持久化,实例重启时不保存原有数据。单机实例主要服务于数据不需要由缓存实例做持久化的业务场景,如数据库前端缓存,用以提升数据读取效率,减轻后端并发压力。当缓存中查询不到数据,可穿透至磁盘数据库中获取,同时,重启服务/缓存实例时,可从磁盘数据库中获取数据进行预热,降低后端服务在启动初期的压力。

实例架构设计

DCS的Redis单机实例架构,如图1所示。

Redis 3.0不支持定义端口,端口固定为6379,Redis 4.0及以上版本支持定义端口,如果不自定义端口,则使用默认端口6379。以下图中以默认端口6379为例,如果已自定义端口,请根据实际情况替换。

图1 Redis单机实例示意图

示意图说明:

  • VPC

    虚拟私有云。实例的内部所有服务器节点,都运行在相同VPC中。

    VPC内访问,客户端需要与实例处于相同VPC。

  • 客户应用

    运行在ECS上的客户应用程序,即实例的客户端。

    Redis实例兼容开源协议,可直接使用开源客户端进行连接,关于客户端连接示例,请参考 《分布式缓存服务开发指南》中的“连接实例”。

  • DCS缓存实例

    DCS单机实例只有1个节点,1个Redis进程。

    DCS实时探测实例可用性,当Redis进程故障后,DCS为实例重新拉起一个新的Redis进程,恢复业务。