Redis中禁止使用耗时与危险命令

keys * 易引起性能问题,导致CPU占用飙升;


对于Redis的keys * 、flushdb、flushall等耗时命令,我们应当慎用,或者禁止使用,这类命令我们可以配置redis.conf禁用这些命


对于时间复杂度为O(n)的数据操作命令,也应该根据自己的数据量使用,命令如下:

List: lindex、lset、linsert

Hash: hgetall、hkeys、hvals

Set: smembers、sunion、sunionstore、sinter、sinterstore、sdiff、sdiffstore

Sorted Set: zrange、zrevrange、zrangebyscore、zrevrangebyscore、zremrangebyrank、zremrangebyscore



扫描二维码关注公众号,回复: 6487474 查看本文章

Redis的危险命令主要有:

flushdb,清空数据库

flushall,清空所有记录,数据库

config,客户端连接后可配置服务器

keys,客户端连接后可查看所有存在的键

我们常常需要禁用以上命令来使服务器更加安全。

禁用的具体做法是,修改服务器的配置文件redis.conf,在SECURITY这一项中,我们新增以下命令:

rename-command FLUSHALL ""

rename-command FLUSHDB ""

rename-command CONFIG ""

rename-command KEYS ""

转载于:https://www.jianshu.com/p/a395919de8ef

猜你喜欢

转载自blog.csdn.net/weixin_33736649/article/details/91226661