zoukankan      html  css  js  c++  java
  • 简记 Redis 类型转化

    SET GET APPEND STRLEN 对字符串
    字符串实现:1. SDS
    2. emb SDS(大于 39 变成 SDS)

    HSET HGET HGETALL HDEL HLEN 对哈希键
    哈希键实现:
    1. hashtable(hashtable是编码,实际实现是 dict 字典,一本字典有两张 真正意义上的 hash表)
    2. ziplist(键值做为一个节点,放入压缩链表,如果有节点的大小大于 64 字节,或键值对个数大于512,则转为 hashtable)

    LRANGE (没有 rrange) LPUSH RPUSH LPOP RPOP 对列表使用
    列表实现:
    1.压缩列表(列表元素如果大于 512 个或某个节点大小 大于等于 64 则转为 LinkedList)
    2.LinkedList : 单纯地把节点对象(一般是SDS)通过前后指针连起来

    SADD SPOP(随机弹出元素,离谱) SCARD(返回元素个数) SREM (删除特定元素) SMEMBERS(返回所有对象) SISMEMBER(遍历集合看看是不是在集合里)
    集合实现:
    1.hashTable(只用键)
    2. intset(只装整数)(只是一条内存,简单规定一个元素多长,并且记录有多少个元素,并且是有序的,所以插入删除需要 O(N),查找用二分需要 logN)
    (如果集合增加了不是整数的,则转为1,或者元素个数大于512)

    ZADD ZRANGE ZSCORE (两个指标,一个查在排行范围,一个在查分数范围)
    有序集合实现:
    1. 压缩列表 (分数 + 对象 做为一个节点)+ 字典 (如果元素个数大于 128 或某节点长于 64 转为 2)
    2. 跳跃表 + 字典

  • 相关阅读:
    UI自动化测试模型
    Selenium:HTML测试报告
    Selenium:浏览器及鼠标、键盘事件
    Selenium:WebDriver简介及元素定位
    selenium自动化环境搭建(Windows)
    浅谈UI自动化测试
    《MySQL:菜鸟入门系列》
    《HTTP协议:菜鸟入门系列》
    人人都是产品经理<1.0>
    聊聊连接池和线程
  • 原文地址:https://www.cnblogs.com/lqlqlq/p/14109738.html
Copyright © 2011-2022 走看看