zoukankan      html  css  js  c++  java
  • Redis List:链表

    Redis - List:链表

    1、list:链表 是简单的字符串列表,按照插入顺序排序,可以插入一个元素到列表的头部或者尾部
    存放的是:单键多值

    2、链表底层实现:双向链表,对头和尾的操作性能较高,通过下标索引操作中间的节点时性能较差,
    一般是操作头部和尾部,能够实现简单的消息队列,push和pop

    3、 对链表List的操作:

    1、lpush key value1 value2:
    插入数据到头部
    
    2、rpush key value1 value2:
    插入数据到尾部
    
    3、lpop key :从头部取出key的值
    
    4、rpop key :
    从尾部取出key的值
    
    5、lrange key start end:取出key的值,从start开始到end
    start = 0:从开始第0位开始取值
    end = -1:取值到最后一位
    
    6、lpush操作:先放进去的值在后边,最后放进去的值在最前边
    lpush k v1 v2 v3,取值后结果为:v3 v2 v1
    
    7、rpush操作:先放进去的值在前边,最后放进去的值在最后边
    rpush k v1 v2 v3,取值后结果为:v1 v2 v3
    
    8、lpop key:
    从左边取出值,每次取出1个值,值没了键名也没了
    
    9、rpop key:
    从右边取出值,每次取出1个值,值没了键名也没了
    
    10、rpoplpush key1 key2:从key1列表的尾部取出1个值放k2列表的在头部,尾部取出值放在头部
    比较神奇的操作,从第一个list的尾部取出值放在第二个list的头部
    
    11、lindex key index:按照索引index获取key的值,从左到右取值
    	
    12、llen key:获取key列表的长度
    
    13、linsert key oldValue newVlaue:
    从oldvalue值的左边写入新的newValue值
    
    14、lrem key n value:
    从头部开始,删除key列表中的 n 个 value值
    
    15、lset key index value:
    将key列表中索引为index的值更新为 value值
    

    4、链表List的数据结构
    list的数据结构为 快速列表
    1)list中的元素在较少的情况下,数据是存放在一块连续的内存中,并不是不连续的进行存储,这个 结构是ziplist,压缩列表
    2)当list中的数据元素角度时,会存储为多个连续内存中,即存储在多个压缩列表中,然后再通过 prev、next指针将多个压缩列表连接起来,组成一个双向链表

    5、

    本文来自博客园,作者:alisleepy,转载请注明原文链接:https://www.cnblogs.com/alisleepy/p/15647483.html

  • 相关阅读:
    Discovery Scanning
    Openvas
    Common Vulnerability Scoring System CVSS
    NIagara Workbench ( 温度控制)
    Nikto and whatweb
    Jace Config
    Active information gathering-services enumeration
    Intsall The Nessus in you kali linux
    Source Code Review
    Niagara workbench (Basic )
  • 原文地址:https://www.cnblogs.com/alisleepy/p/15647483.html
Copyright © 2011-2022 走看看