在服务器启动时,我需要清除redis内存。但每当一个新的集群形成时,它就会调用flushall并清除内存中的所有内容。如何从第一个服务器开始只运行一次flushall?
主人
//run when the first server starts
If(first server){
redis.flushall();
}
//run code
其他单独的集群(在不同的端口/脚本上运行)
//run when the first server starts
If(first server){//should be false now
redis.flushall();
}
//run code
概述
Server 1 -- call flushall once (clean Redis memory)
Server 2 -- dont call flushall
Server 3 -- dont call flushall
...
Server n -- dont call flushall
有没有办法做这种事?
顺便说一下,我使用的是aws托管,它可以自动复制和扩展我的服务器
1条答案
按热度按时间g6ll5ycj1#
您可以考虑让每个单独的nodejs进程询问其共享redis服务器当前的时间。
这是一种无需向redis推送值即可获得所需内容的方法。