.Net Core下使用KeyDB高可用缓存集群
提到缓存,首先会想到Redis,它是目前流行的开源内存键值存储服务。
使用单个Redis实例进行缓存非常简单,如果创建高可用集群,则需要一个主节点、两个从节点和多个监视主节点的哨兵节点:
哨兵节点监控主节点的状态,一旦出现故障,则将其中一个从节点提升为主节点。
为了高可用集群正常工作,哨兵节点需要为单数,不仅要监控主副节点,它们之间也要互相监控。
一旦某个哨兵节点出现故障,则主从切换可能失效。
可以看到,这种方式不仅部署复杂,对运维也有较高要求。
KeyDB
KeyDB是Redis的高性能分支,专注于多线程、内存效率和高吞吐量。
KeyDB支持主动复制功能,每个节点都设置成主节点,节点之间互相同步数据:
KeyDB允许你读取和写入所有节点,这可以增加高负载下的读取,并可保证如果一个节点出现故障,另一个将继续工作。
Demo
下面,我们演示用CentOS创建KeyDB集群,并用http://ASP.NET Core Web API使用缓存。
1. 安装KeyDB集群
运行下列命令安装KeyDB:
wget https://download.keydb.dev/pkg/open_source/rpm/centos7/x86_64/keydb-latest-1.el7.x86_64.rpm
sudo yum install ./keydb-latest-1.el7.x86_64.rpm
相关文章