Memorystore for Redis 概览

Memorystore for Redis 提供完全托管式服务,该服务由 Redis 内存数据存储提供支持,以构建提供亚毫秒级数据访问的应用缓存。

Memorystore for Redis 与自行管理的 Redis 相比具有以下几个优势:

  • 根据您的需求部署。 利用 Memorystore for Redis,您可根据自己的性能需求和运营需求,灵活地选择适合的服务层级和大小。您只需点击几次鼠标,就可以选择部署基本层级独立 Redis 实例或最高可达 300 GB 的标准层级高可用性 Redis 实例。
  • 轻松扩缩以获得超快的速度。 借助 Memorystore for Redis,您可以通过为 Redis 实例扩容轻松实现延时和吞吐量目标,同时将对应用可用性的影响降至最低。从最低层级和最小大小开始,然后随着应用需求的变化而增大 Redis 实例。
  • 可用性高且更安全。使用专用 IP 保护 Redis 实例免受来自互联网的攻击,并使用基于 Identity and Access Management 角色的访问控制为其提供进一步保护。标准高可用性实例始终可跨地区复制,并提供 99.9% 的可用性服务等级协议 (SLA)。
  • 专注于应用。 Memorystore for Redis 可自动执行部署和管理 Redis 所需的复杂操作任务。预配、复制、故障转移和监控等任务都是自动执行的。 应用连接到单个端点,消除了全部节点发现逻辑并简化了管理和操作。此外,集成 Cloud Monitoring 后,您可以轻松监控 Redis 实例。
  • 兼容 Redis 协议。 Memorystore for Redis 完全符合 Redis 协议。您可以使用开源 Redis 移动应用,以便在不更改任何代码的情况下使用 Memorystore for Redis。无需学习新工具,所有现有工具和客户端库便已足够。

适合的场景

Memorystore for Redis 为需要实时快速处理数据的用例提供快速内存存储。从简单的缓存用例到实时分析,Memorystore for Redis 均可提供您需要的性能。

  • 缓存:缓存是现代应用架构不可或缺的一部分。比起从基于磁盘的后端存储访问数据,Memorystore for Redis 为访问量大的数据提供更低的访问延时和更高的吞吐量。常见的缓存示例有会话管理、经常访问的查询、脚本和页面。

  • 游戏:游戏的关键在于吸引和保持用户的注意力。 让用户迷上游戏的一个重要方面是排行榜。 每个人都希望了解他们的进展状况以及排名, 让这种体验变得迅速即时至关重要,凭借其内存存储和数据结构(如 Sorted Set),Memorystore for Redis 可以实现分数排序列表的轻松维护,同时提供元素的唯一性。玩家个人资料是另一条可能经常访问的信息。利用 Redis 哈希可以快速轻松地存储和访问个人资料数据。

  • 流式处理:无论是处理 Twitter 动态消息,还是处理来自物联网设备的数据流,Memorystore for Redis 都非常适合流式解决方案。Memorystore for Redis 与 Dataflow 结合后,可提供一个可扩缩的快速内存存储来存储中间数据,确保数千个客户端能够以低延迟访问这些数据。

特点

下表描述了 Memorystore for Redis 的特点:

  • 完全托管:部署和维护 Redis 实例可能非常耗时。Memorystore for Redis 提供修补、24x7 全天候威胁监控、故障检测和自动故障转移服务,让您将更多时间用于构建应用。
  • 简单部署:通过从 Google Cloud Console 选择基本层级或标准层级,或者通过使用 Cloud SDK 或 Cloud 客户端库自动部署,轻松部署单个实例或高可用性 Redis 实例。
  • 高可用性:标准层级中的 Memorystore for Redis 实例可跨地区复制,其运行状况受到监控并且能够进行快速自动故障转移。标准层级实例还提供 99.9% 的服务等级协议 (SLA)。如需了解详情,请参阅高可用性
  • 企业级安全性:Redis 实例受专用 IP 保护以免受互联网攻击,并且对实例的访问受到控制且仅限该 Redis 实例所在虚拟专用网上运行的应用访问。

    实例由 IAM 角色进一步保护,从而可以精确控制谁可以管理和访问 Redis 实例。此外,Memorystore for Redis 还集成了 Cloud Audit Logging,让您知晓谁在何时做了什么事。

  • 按需扩缩:利用 Memorystore for Redis 可以将实例扩容至最大 300 GB,并支持高达 12 Gbps 的网络吞吐量。凭借无缝扩缩实例大小的功能,您可以从小实例开始,然后根据需要增加实例的大小。对标准层级的实例进行扩缩时,应用会停机一分钟以内的时间。
  • 监控:可通过 Monitoring 获得 Redis 指标,从而轻松监控 Redis 实例。您还可以使用 Cloud Logging 查看实例的 Redis 日志。
  • 按需结算:Memorystore for Redis 实例根据预配的容量 (GB) 按小时结算。如果实例的使用时间只有几分钟,则您只需支付这几分钟的费用。
  • Redis 5.0、4.0 和 3.2 版:这些版本始终利用最新的关键补丁程序保持最新状态,确保 Redis 实例的安全。如需详细了解版本和补丁程序等级,请参阅 Memorystore for Redis 版本说明受支持的版本

连接到 Memorystore for Redis 实例

您可以在以下环境中使用任何标准 Redis 客户端连接到 Memorystore for Redis 实例

  • App Engine 柔性环境
  • App Engine 标准环境
  • Compute Engine 虚拟机实例
  • Cloud Functions
  • Cloud Run
  • Google Kubernetes Engine 集群

一些无服务器环境要求将无服务器 VPC 访问通道连接器作为与 Memorystore for Redis 连接的先决条件。如需了解详情,请参阅无服务器 VPC 访问通道连接器要求

为了连接到实例,客户端必须连接到同一网络,并且位于与 Memorystore for Redis 实例相同的地区中。如需了解详情,请参阅 Memorystore for Redis 网络页面。

托管 Redis 和开源 Redis 之间的差异

Memorystore for Redis 符合 Redis 协议。您可以将使用开源 Redis 的应用迁移到 Google Cloud,无需更改任何代码。

一般来说,Memorystore for Redis 实例提供的 Redis 功能与本地托管的 Redis 实例提供的功能相同。部分主要差异如下所示:

  • Memorystore for Redis 目前不支持 Redis Clustering 或 Redis Sentinel。

  • 开源 Redis 提供了多种将数据保留到磁盘的选项。 RDB 持久化可以生成数据集的时间点快照,而 AOF 持久化可以记录服务器接收的每个写入操作。Memorystore for Redis 目前支持具有导出功能的 RDB 快照。Memorystore for Redis 不支持 AOF 持久化。

  • Memorystore for Redis 实例的大多数参数已预先配置,无法更改。其他参数在设置 Memorystore for Redis 实例时配置。如需了解详情,请参阅 Redis 配置

  • 某些命令可能会干扰托管 Redis 服务,因此会被屏蔽。 如需了解详情,请参阅被屏蔽的 Redis 命令列表。

  • 标准层级实例不允许从副本读取。

层级功能

下表介绍了可用的 Memorystore for Redis 服务层级之间的区别:

规格 基本层级 标准层级
说明 提供缓存,但不进行复制 通过复制提供冗余和可用性
最大实例大小 300 GB 300 GB
最大网络带宽 12 Gbps 12 Gbps
Stackdriver Monitoring
调节内存¹
跨地区复制
自动故障转移

¹在扩充或缩减期间,基本层级实例会出现停机并完全清空缓存。在调节操作期间,标准层级实例会出现最小限度的停机时间并丢失一些未复制的数据。如需了解详情,请参阅扩缩行为
2 在维护期间,基本层级实例会完全清空缓存,标准层级实例会进行故障转移。如需了解详情,请参阅维护政策

后续步骤