本文面向首次使用腾讯云分布式缓存数据库(兼容 Redis)的用户,提供一条从了解产品到业务上线的完整学习路径。如果您已明确要做什么,可直接跳转至对应阶段;如果您刚接触分布式缓存数据库,建议按顺序阅读,每个阶段结束后再进入下一阶段。
上手路线图
从注册账号到业务稳定运行,通常经历以下六个阶段。前三个阶段决定实例的形态与成本,后三个阶段决定业务的稳定性与可维护性。
|
| 这个产品能解决我的什么问题 |
| 我该选哪种引擎、架构和规格 |
| 如何开通一个可用的实例 |
| 如何确认实例可被访问 |
| 如何在代码中使用缓存 |
| 如何避免故障与数据丢失 |
需要说明的是,第六阶段常被新手跳过,但备份规则与告警策略恰恰是在故障发生时决定损失大小的关键配置。建议在业务正式接入前完成。
第一步:认识产品
1.1 产品能力与适用场景
腾讯云分布式缓存数据库(兼容 Redis)是一款内存数据库服务,兼容 Redis 协议,将数据存放在内存中以提供毫秒级的读写响应。建议按以下顺序阅读三篇产品简介,它们分别回答"是什么"、"为什么选它"和"用在哪里"三个问题。
|
1 | | 产品定位、核心能力与服务形态 |
2 | | 相比自建 Redis 的差异,如高可用、弹性伸缩、免运维 |
3 | | 缓存加速、排行榜、会话存储、消息队列等落地场景 |
读完这三篇,您应能判断自己的业务是否适合使用分布式缓存数据库,以及打算用它承接哪部分流量。
1.2 先建立术语认知
分布式缓存数据库的文档中会频繁出现分片、副本、主节点、Proxy、可用区等术语。若对这些概念不熟悉,后续选型时容易做出错误判断。建议先浏览 名词解释,遇到不确定的表述可随时查阅 词汇表。 第二步:完成选型
选型是新手最容易出错的环节。实例创建后,引擎类型与地域无法变更,规格与架构虽可调整但会带来变更成本。因此建议在购买前完成以下四项决策。
2.1 选择存储引擎
|
Redis 版 | 4.0、5.0、6.2、7.0 | 通用选择,功能覆盖完整,已经过大规模生产环境验证 |
Valkey 版 | 8.0、9.0 | 作为 Redis 的继任分支,在 I/O 处理上做了性能优化 |
Memcached 版 | 1.6 | 仅需简单键值缓存、且业务已基于 Memcached 协议开发 |
关于版本号的选择,建议优先选用较新的稳定版本以获得完整的数据结构与命令支持,具体差异请查阅 大版本功能清单。同时请留意 版本生命周期计划,避免选用即将停止支持的版本。 2.2 选择架构
架构决定了实例的容量上限与扩展方式,是选型中影响最深远的一项。两种架构的区别如下。
|
内存规格 | 256MB - 64GB | 单分片1GB - 64GB |
分片数量 | 不涉及 | 1 - 128个,总容量最高8TB |
数据分布 | 单分片存储全量数据 | 数据按哈希槽分布到各分片 |
扩展方式 | 提升单分片内存容量 | 增加分片数量,横向扩展容量与吞吐 |
并发性能 | 8万 - 10万 QPS | (8万 - 10万)/ 分片,最高千万级 QPS |
命令兼容性 | 完整支持 | 跨槽位命令存在兼容性限制 |
选择的判断依据是数据量与命令使用方式:数据量在64GB以内、且业务中较多使用 Lua 脚本或跨 Key 操作时,选择标准架构;数据量预期超过64GB或需要更高吞吐时,选择集群架构,但需提前确认业务命令的兼容性。架构原理详见 标准架构与 集群架构,命令差异详见 Proxy 架构与直连模式使用差异。 说明:
256MB规格为入门体验规格,仅适用于测试环境验证,不建议用于生产环境,且支持的可用区有限。上表数据为通用参考值,实际可选规格请以购买页展示为准。标准架构后续可升级为集群架构,但升级涉及数据重分布,需提前做兼容性评估;若数据量增长趋势明确,建议初期即选择集群架构。
2.3 确定规格与部署位置
规格包含内存容量、副本数量与分片数量三个维度,共同决定了实例的容量、性能与可用性水平。各规格对应的连接数与吞吐量上限请参见 规格与性能。 副本数量的可选范围为1至5个,其作用体现在两方面:一是提升可用性,所有副本节点均参与高可用切换,主节点故障时系统会自动将其中一个副本提升为新主节点,副本数越多可用性越高;二是扩展读性能,副本数不小于1时即可开启 读写分离,将读请求分流至副本节点。对可用性要求较高的生产业务,建议配置2个及以上副本。 分片数量是集群架构特有的规格维度,标准架构不涉及。集群架构的分片数可选1至128个(可选值包括1、3、5、8、12、16、24、32、40、48、64、80、96、128),单分片内存规格为1GB至64GB,实例总容量为单分片容量与分片数的乘积,最高可达8TB。分片数量同时决定吞吐量上限,可按单分片8万至10万 QPS 线性估算。若后续由标准架构升级为集群架构,升级时需重新确定分片数量。
连接数方面,各规格默认上限为10000(集群架构为每分片10000),最高可调整至40000。若业务连接数需求超出默认值,可通过 调整连接数数量 追加配额。 地域与可用区的选择原则是就近部署:实例应与访问它的云服务器处于同一地域,跨地域访问会显著增加网络时延。对可用性有更高要求的业务,可选择 多可用区部署,将节点分布到不同机房以抵御机房级故障。可选范围请查阅 地域和可用区。 注意:
地域在实例创建后不可变更。若选错地域,只能通过新建实例加数据迁移的方式调整。
2.4 选择计费模式
计费模式分为包年包月与按量计费两种,区别在于付费时点与单位成本。
|
包年包月 | 先付费,按购买时长计费 | 业务长期稳定运行,单位成本更低 |
按量计费 | 后付费,按实际使用时长结算 | 短期测试、临时扩容或用量不确定的场景 |
变更规格、续费、退费与欠费的处理规则,建议在购买前一并了解,避免后续产生预期外的费用或服务中断:
|
调整规格如何计费 | |
到期如何续费 | |
不再使用如何退费 | |
账户欠费会怎样 | |
第三步:创建实例
完成选型后即可创建实例。创建前请确认已完成腾讯云账号注册与实名认证,并确保账户余额充足。购买页各配置项的填写说明请参见 购买实例,第一次快速体验的创建操作步骤请参见 快速创建实例。 说明:
创建过程中有两项配置值得特别留意。一是密码,它是实例的第一道访问防线,建议直接设置为强密码,并可通过 设置密码复杂度 统一约束规则。二是私有网络与子网,实例应与业务服务器置于同一私有网络,否则需额外配置网络互通才能访问。 第四步:连接并验证
4.1 连接前的准备
连接失败是新手遇到最多的问题,其原因通常集中在网络不通、安全组未放通和密码格式错误三类。建议先阅读 连接准备,确认以下条件均已满足。 |
网络连通 | 客户端与实例处于同一私有网络,或已配置对等连接、云联网等互通方式 |
安全组 | 实例绑定的安全组已放通客户端来源 IP 与访问端口(默认6379) |
连接地址 | 已从实例详情页的网络信息区域获取 VIP 地址与端口 |
密码格式 | 使用默认账号时格式为 实例 ID:密码,使用自定义账号时格式为 用户名@密码 |
其中密码格式是新手容易忽略的一点。默认账号需要将实例 ID 拼接在密码前,若直接填写密码将导致认证失败。安全组的配置方法请参见 配置安全组。 4.2 建立连接并验证
连接成功后建议执行两个命令做基础验证:执行 PING 命令,返回 PONG 说明链路正常;再执行一次 SET 与 GET,确认数据可正常读写。两项均通过,说明实例已可正式使用。
说明:
本章及后续内容中的密码认证与连接方式适用于 Redis 版与 Valkey 版。Memcached 版仅支持免密码访问,且不支持通过 DMC 与 redis-cli 连接,需使用 telnet 方式,详情请参见 存储引擎。 第五步:接入业务代码
5.1 选择客户端并编写连接代码
业务代码通过标准 Redis 客户端连接实例,使用方式与连接自建 Redis 一致。请根据您的开发语言选择对应的连接示例。
|
Java | |
Python | |
Go | |
Node.js | |
PHP | |
C | |
.Net | |
若业务对传输安全有要求,可开启 SSL 加密,对链路数据加密后再传输。 5.2 提前了解命令兼容性
并非所有 Redis 命令都可在云上实例中使用。部分命令因涉及集群管理或存在数据风险而被限制,跨版本之间也存在命令差异。建议在编写代码前先确认所用命令的支持情况,避免上线后才发现不兼容。
|
命令整体支持范围 | |
哪些命令受限 | |
不同大版本的命令差异 | |
集群架构下的遍历方式 | |
Memcached 版兼容性 | |
5.3 遵循开发准则以避免典型问题
缓存设计不当引发的性能问题,多数源于设计阶段而非运维阶段。大 Key 会让单次操作耗时陡增,热 Key 会造成单节点负载倾斜,不合理的淘汰策略会导致缓存命中率持续偏低。这些问题一旦进入生产环境,改造成本远高于设计期规避。
因此在业务上线前,建议完整阅读开发准则:
|
| 命名混乱导致后期难以维护与排查 |
| 产生大 Key,引发操作阻塞 |
| 淘汰策略不当造成命中率偏低或数据意外丢失 |
| 误用高复杂度命令拖慢整体响应 |
| 连接池配置不当造成连接耗尽或负载不均 |
| 单节点压力集中,性能表现不稳定 |
若您使用 Spring 生态开发,可参考实践教程中的 完整接入示例,其中包含组件配置、服务搭建与性能数据采集的完整流程。 第六步:建立运维保障
业务接入完成并不意味着上线准备就绪。以下三项配置用于应对数据丢失、性能劣化与安全风险,建议在正式承载流量前全部完成。
6.1 配置数据备份
备份是数据安全的底线。系统提供自动备份能力,但保留周期与执行时间需要您根据业务的数据重要性自行设定。建议将备份时间设在业务低峰期,并根据数据可容忍的丢失窗口确定备份频率。
|
了解备份类型与恢复能力 | |
设置备份时间与保留天数 | |
用备份数据创建验证实例 | |
6.2 配置监控与告警
对新手而言,以下四个指标建议优先配置告警,它们直接反映容量与负载是否接近上限:
|
内存使用率 | 容量即将写满,可能触发数据淘汰 | |
CPU 使用率 | 存在高复杂度命令或请求量过大 | |
连接使用率 | 连接数接近规格上限,新连接可能被拒绝 | |
出流量 | 带宽接近上限,可能出现请求排队 | |
6.3 加固访问安全
实例的安全防护由网络隔离与身份认证两层构成。网络层通过安全组限制哪些来源可以访问实例,身份层通过账号与密码限制访问者的权限范围。安全组应遵循最小授权原则,仅放通业务确实需要的来源 IP 与端口,避免图方便而放通全部来源。账号方面,建议为不同用途创建独立账号并分配相应权限,例如数据分析类业务只需只读权限即可。
|
限制访问来源 | |
创建账号并分配权限 | |
约束密码强度 | |
加密传输链路 | |
屏蔽高危命令 | |
说明:
产品支持 免密码访问,但该方式会降低访问门槛,仅建议在网络隔离充分的测试环境使用。生产环境请开启密码认证。 常见问题速查
新手阶段的问题集中在连接、选型与费用三类。以下按场景归类,便于快速定位。
连接与网络
|
如何连接实例 | |
连接失败如何排查 | |
如何查看连接地址 | |
能否从公网访问 | |
其他连接与网络问题 | |
实例管理与使用
|
忘记密码怎么办 | |
容量不够如何扩容 | |
实例误删能否找回 | |
性能不达预期如何分析 | |
其他实例管理问题 | |
选型与费用
|
如何选择规格与架构 | |
买错了如何退费 | |
欠费后服务是否受影响 | |
服务可用性承诺 | |
其他功能与使用问题 | |
进阶学习
完成上述六个阶段后,您已具备使用分布式缓存数据库支撑业务的基础能力。若要进一步提升可用性、可观测性或完成数据迁移,可参考以下方向。
|
全部运维操作 | 需要系统了解控制台的全部功能 | |
数据迁移上云 | 已有自建或第三方云上的实例需要迁入 | |
性能诊断优化 | 需要定位慢查询、大 Key 与热 Key | |
跨地域容灾 | 业务覆盖多个地域,需就近读取或地域级容灾 | |
自动化运维 | 需要通过接口批量管理实例 | |
版本与功能更新 | 需要跟进产品的新增能力 | |
获取帮助
使用过程中遇到问题或有改进建议,可通过以下方式反馈,将有专人跟进处理。
文档问题:若发现文档中的链接失效、内容错误或描述不清,可选中相应内容后单击文档反馈,在弹出页面中提交。
产品问题:涉及功能使用、故障处理或计费疑问,可咨询 在线客服,或参见 联系我们 获取其他支持渠道。