AWS ElastiCache - Memcached 和 Redis



Amazon ElastiCache 支持 Redis 和 Memcached 缓存引擎。Redis 是一个开源的内存数据结构,实现了分布式、内存中的键值数据库。Memcached 也是一个分布式内存缓存系统。它通常用于通过缓存数据和对象来加速动态数据库驱动的网站,从而减少读取外部数据源以获取 Web 应用程序中值的次数。

以下是我们在 AWS 平台中应该选择特定引擎的场景。

使用 Redis

以下功能列表展示了 Redis 如何能够处理更复杂的数据结构,提供持久性和排序等。因此,此处描述了我们应该在 ElastiCache 中选择 Redis 作为平台的场景。

  • 需要存储复杂的数据类型,例如字符串、哈希、列表、集合、有序集合和位图。

  • 需要对内存数据集进行排序或排名。

  • 需要密钥存储的持久性。

  • 需要将数据从主节点复制到一个或多个只读副本,以用于读密集型应用程序。

  • 如果主节点发生故障,需要自动故障转移。

  • 如果主节点发生故障,需要自动故障转移。

  • 需要备份和恢复功能。

  • 需要支持多个数据库。

使用 Memcached

Memcached 更适合简单的数据结构,并且不提供持久性。因此,以下场景适用于 Memcached 使用。

  • 需要尽可能简单的模型来存储键值对。

  • 需要运行具有多个核心或线程的大型节点

  • 需要能够扩展和缩减,根据系统需求的增加和减少添加和移除节点。

  • 需要缓存对象,例如数据库。

广告