• redis使用基础(八) ——Redis命令属性


    redis使用基础(八)

    ——Redis命令属性

     

    (转载请附上本文链接——linhxx)

    一、概述

             Redis不同的命令有不同的属性,如是否为只读、是否为管理员命令等。不同的属性类型有不同的特性。redis有6种命令属性。

    二、REDIS_CMD_WRITE

             该属性会修改redis的数据,只读的从数据库会拒绝该类型的命令。对redis的数据进行增、删、改,无论是值、key->value、score、队列、集合操作、过期时间、排序等任意内容,只要执行完后redis的数据和原先不一样,就是此属性的命令。

             该属性的命令非常多,含有set、push、pop、del、add、rem、incr、decr、move、flush、expire、rename、union、inter、append、sort等的命令,通常都是redis_cmd_write。

    三、REDIS_CMD_DENYOOM

             该属性的命令会增加redis占用存储空间,该属性属于redis_cmd_write的其中一大类,如set、push命令,如果操作的是新的键,则需要redis再分配空间给这些键。

             但是redis_cmd_write不全是redis_cmd_denyoom,如set对现有键重新分配,如果字符串长度一样则不会改变大小;如del删除键,反而会减少使用存储空间。

    四、REDIS_CMD_NOSCRIPT

             该属性的命令无法在脚本中(如PHP等)对redis服务器执行,而只能在管理工具如redis-cli等平台执行。

             包括:BRPOP、BRPOPLPUSH、BLPOP、SPOP、AUTH、EXEC、MULTI、SAVE、DISCARD、SYNC、REPLCONF、MONITOR、SLAVEOF、DEBUG、SUBSCRIPE、UNSUBSCRIPE、PSUBSCRIPE、WATCH、UNWATCH、EVAL、EVALSHA、SCRIPT。

             这些命令主要是对redis进行管理的命令,如主从命令、登陆鉴权、监控管理、底层通信、调试、复制与备份、发布订阅、脚本操作等命令。

    五、REDIS_CMD_RANDOM

             执行该类型的属性后,就不能再执行redis_cmd_write属性。

             包括:SPOP、SRANDMEMBER、RANDOMKEY、TIME。

    六、REDIS_CMD_SORT_FOR_SCRIPT

             该属性会产生随机的结果,在脚本调用这些命令时,redis会对结果进行排序。

             包括:SINNER、SUNION、SDIFF、SMEMBERS、HKEYS、HVALS、KEYS。

    七、REDIS_CMD_LOADING

             当redis正在启动,正在将数据从硬盘加载到内存中的时候,只会执行此属性的命令。

             包括:INFO、SUBSCRIBE、UNSUBSCRIPE、PSUBSCRIPE、PUNSUBSCRIPE、PUBLISH、AUTH、SELECT。

    ——written by linhxx

    更多最新文章,欢迎关注微信公众号“决胜机器学习”,或扫描右边二维码。

    博客园这边,我会定期批量发布文章,如果想要实时看到最新的文章,欢迎关注微信公众号"决胜机器学习",里面有我最新的文章。linhxx
  • 相关阅读:
    SQL server不同服务器之间复制数据 枫
    jQuery对Select的操作集合[终结篇] 枫
    php操作cookie搜集 枫
    mysql省市县数据库 枫
    sqldate转换格式 枫
    sql清除数据的各种情况 枫
    asp.net后台控制HtmlMeta 枫
    mysql代码段 枫
    php时间操作 枫
    HTTP协议header头域 枫
  • 原文地址:https://www.cnblogs.com/linhxx/p/8412901.html
Copyright © 2020-2023  润新知