Closed MrYourM closed 4 years ago
当数据库中 key 的数量非常多时(案例中为479万数据),执行 flushdb 或者 flushall 会耗时 7~8s,产生以下影响: 1)超过设定的超时时间 5s,导致通过前端删除数据失败 2)block redis-server 的操作,引发主从切换
解决方式: 1)通过对复杂度为 O(n) 的操作,适当延长超时时间值 2)可以通过执行 flushall async 或者 flushdb async 来实现处理
同 case 见 https://github.com/antirez/redis/issues/2691
当数据库中 key 的数量非常多时(案例中为479万数据),执行 flushdb 或者 flushall 会耗时 7~8s,产生以下影响: 1)超过设定的超时时间 5s,导致通过前端删除数据失败 2)block redis-server 的操作,引发主从切换
解决方式: 1)通过对复杂度为 O(n) 的操作,适当延长超时时间值 2)可以通过执行 flushall async 或者 flushdb async 来实现处理