【AWS】对比ElastiCache的Memcached和Redis

编程学习日记

2021年5月6日 (Yuē èr èr yī wǔ yuè liù rì)

弹性缓存(ElastiCache)的特点

ElastiCache将数据存储在节点的内存中,从而可以快速地进行数据的读写操作。
然而,由于数据存储在内存中,因此需要注意,当节点重新启动或发生故障时,数据可能会丢失。

Memcached 是一种缓存系统。

Memcached集群可以通过简单地添加或删除节点来实现负载均衡。但是,这依赖于自动检测功能。
Memcached通过轮询节点状态来访问节点。

轮询是一种将服务器和客户端,主系统和外部设备等多个设备协同工作的方法之一。主要为了避免通信等方面的竞争,主机定期向各个设备进行查询,并在满足条件时进行发送和接收以及各种处理。

由于Memcached是多线程运行的,因此增加CPU核心数量可以提高性能。由于它只能处理简单的数据,所以在处理复杂数据时,需要在应用程序中更改存储类型。此外,它可以处理的命令也很少。

Redis是什么

Redis有几种类型,与Memcached集群的不同之处在于具有集群端点。通过增加或减少Redis集群的节点数量可以实现负载均衡。
由于Redis集群具有端点,因此在应用端无需进行轮询。

Redis由于是单线程运行,即使增加CPU核心数量,也不能像Memcached那样期望性能提升。Redis不仅能够使用丰富的数据类型,还具备丰富的功能,如使用正则表达式进行键的搜索等。

使用Memcached和Redis的选择。
使用Memcached和Redis有什么区别?
如何正确使用Memcached和Redis?
如何有效地利用Memcached和Redis?
Memcached和Redis的区别和用法。

使用Memcached时

    • 単純なデータ型でいい場合

 

    • マルチスレッドを使用する場合

 

    オブジェクトをキャッシュする必要がある場合

使用Redis

    • 複雑なデータ型が必要な場合

 

    • フェイルオーバーが必要な場合

 

    永続化が必要な場合

参考资料

选择ElastiCache时,应该选用Memcached还是Redis?

广告
将在 10 秒后关闭
bannerAds