• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • xtrim 命令

    XTRIM 将流裁剪为指定数量的项目,如有需要,将驱逐旧的项目(ID较小的项目)。

    语法

    XTRIM key MAXLEN | MINID[~]count

    key:队列名称。MAXLEN:长度。count:数量。~:限制数量不少于。

    可以使用以下策略之一对流进行修剪:

    • MAXLEN:只要流的长度超过指定的threshold,threshold就逐出条目,其中是一个正整数。
    • MINID:逐出ID低于的条目threshold,其中threshold是流ID。

    返回值

    返回从流中删除的条目数。

    实例

    例如,下面的命令会将流裁剪到最新的1000个项目:

    XTRIM mystream MAXLEN 1000
    

    可以使用以下特殊形式提供命令,以提高其效率:

    XTRIM mystream MAXLEN ~ 1000
    

    参数~意思是,用户不是真的需要精确的1000个项目。它可以多几十个条目,但决不能少于1000个。通过使用这个参数,仅当我们移除整个节点的时候才执行修整。这使得命令更高效,而且这也是我们通常想要的。

    实例

    redis> XADD mystream * field1 A field2 B field3 C field4 D
    "1539863719429-0"
    
    redis> XTRIM mystream MAXLEN 2
    (integer) 0
    
    redis> XRANGE mystream - +
    1) 1) "1539863719429-0"
    2) 1) "field1"
    	  2) "A"
    	  3) "field2"
    	  4) "B"
    	  5) "field3"
    	  6) "C"
    	  7) "field4"
    	  8) "D"
    

    上篇:xadd 命令

    下篇:xdel 命令