您可能会使用占用大量资源的 Redis 命令。随着总数据大小或键大小的增加,使用这些命令的费用也会增加。使用这些命令可能会导致以下性能问题:
- 延迟时间较长和客户端超时
- 因增加内存用量的命令而导致的内存压力
- 节点复制和同步期间因 Redis 主线程被阻塞而导致的数据丢失
- 资源不足的健康检查、可观测性和复制
如需解决这些性能问题,请使用开销大的命令健康问题。如需查看此健康问题,请使用Database Center。这是一个 AI 辅助的信息中心,可集中展示实例的健康状况问题。
准备工作
在开始使用开销大的命令健康问题之前,请先完成本部分中的前提条件。
分配角色和权限
如需使用 Database Center 查看和处理健康问题,您必须获得 Database Center 的 IAM 权限。如需详细了解如何获取这些权限,请参阅授予 IAM 权限。
此外,如需详细了解 IAM 角色,请参阅 IAM 角色和权限索引以及管理对项目、文件夹和组织的访问权限。
查看健康状况问题
如需查看开销大的命令健康问题,请执行以下操作:
在 Google Cloud 控制台中,前往 Database Center 中的所有资源页面。
选择商品菜单。在产品对话框中,执行以下操作:
可选:如果已选择任何商品,请清除这些商品。
在 Memorystore 窗格中,选择 Redis。
点击应用。
选择问题菜单。在问题对话框中,执行以下操作:
清除所有选定的问题。
在性能和容量窗格中,选择开销大的命令健康问题。
点击应用。Database Center 会显示与高开销命令相关的任何存在性能问题的实例。
点击实例名称旁边显示的问题。系统会在单独的窗格中打开“Expensive commands”(昂贵的命令)健康问题。
如果问题未显示在实例旁边,则表示您未对该实例使用高费用命令。
如需查看有关健康问题的详细信息,请点击窗格中的展开箭头 (expand_more)。
解决健康问题
如需解决开销大的命令健康问题,请使用资源效率高的命令,而不是开销大的命令。例如,如需移除文件和链接,除了开销较大的 DEL 命令之外,还可以使用资源效率较高的 UNLINK 命令。
此外,您还可以使用 Cloud Monitoring 查看 /stats/cpu_utilization 指标和客户端日志。检查高 CPU 利用率的时间段是否与运行开销大的命令的时间段相同。