当前位置: 首页 > news >正文

河南送变电建设有限公司网站中国建设银行电脑版

河南送变电建设有限公司网站,中国建设银行电脑版,厦门网页制作模板,广西壮族自治区市场监督管理局官网Redis 基础类型 String 应用场景 缓存功能#xff1a;string 最常用的就是缓存功能#xff0c;会将一些更新不频繁但是查询频繁的数据缓存起来#xff0c;以此来减轻 DB 的压力。 底层实现 如果字符串对象保存的是一个字符串值#xff0c; 并且这个字符串值的长度大于…Redis 基础类型 String 应用场景 缓存功能string 最常用的就是缓存功能会将一些更新不频繁但是查询频繁的数据缓存起来以此来减轻 DB 的压力。 底层实现 如果字符串对象保存的是一个字符串值 并且这个字符串值的长度大于 44 字节 那么字符串对象将使用一个简单动态字符串SDS来保存这个字符串值 并将对象的编码设置为 raw。如果字符串对象保存的是一个字符串值 并且这个字符串值的长度小于等于 44 字节 那么字符串对象将使用 embstr 编码的方式来保存这个字符串值。 SDS 与 C 字符串的区别 struct sdshdr { int len; // buf 中已占用空间的长度 int free; // buf 中剩余可用空间的长度char buf[]; // 数据空间 };SDS 相比C 字符串的优势 SDS保存了字符串的长度而C字符串不保存长度需要遍历整个数组找到’\0’为止才能取到字符串长度。修改SDS时检查给定SDS空间是否足够如果不够会先拓展SDS 的空间防止缓冲区溢出。SDS预分配空间的机制可以减少为字符串重新分配空间的次数。 Hash类型 Hash对象的实现方式有两种分别是ziplist、hashtable其中hashtable的存储方式key是String类型的value也是以key value的形式进行存储。 应用场景 购物车场景可以以用户的id为key商品的id 为存储的field商品数量为键值对的value这样就构成了购物车的三个要素。分布式生成唯一ID return redisUtil.increment(key, hashKey, offset); hashtable – 渐进式rehash 若是rehashindex 表示为-1表示没有rehash操作当rehash操作开始时会将该值改成0 「更新、删除、查询会在ht[0]和ht[1]中都进行」 「ht[0]只减不增直到最后的某一个时刻变成空表」 ziplist 压缩列表ziplist是一组连续内存块组成的顺序的数据结构压缩列表能够节省空间压缩列表中使用多个节点来存储数据。 ziplist类似于双向链表但是它不存储上一个节点和下一个节点的指针而是存储上一个节点长度和当前节点长度通过牺牲部分读写性能来换取高效的内存空间利用率节约内存。 List类型 应用场景 Redis中的列表可以实现「阻塞队列」 底层实现 ziplistlinkedlistquicklist linkedlist是一个双向链表他和普通的链表一样都是由指向前后节点的指针。 quickList 是 zipList 和 linkedList 的混合体它将 linkedList 按段切分每一段使用 zipList 来紧凑存储多个 zipList 之间使用双向指针串接起来。 Set集合 hashtable 以及 intset typedef struct intset {uint32_t encoding; /* 编码方式支持存放16位、32位、64位整数*/uint32_t length; /* 元素个数 */int8_t contents[]; /* 整数数组保存集合数据*/ } intset;升级原理 1、IntSet升级编码为INTSET_ENC_INT32, 每个整数占4字节并按照新的编码方式及元素个数扩容数组2、倒序依次将数组中的元素拷贝到扩容后的正确位置3、将待添加的元素50000放入数组末尾4、最后将inset的encoding属性改为INTSET_ENC_INT32将length属性改为4 ZSet集合 应用场景 排行榜 限流策略 --KEYS[1]:该次限流对应的key --ARGV[1]:一分钟之前的时间戳 --ARGV[2]:此时此刻的时间戳 --ARGV[3]:允许通过的最大数量 --ARGV[4]:member名称随机生成 // 删除一分钟之前所有时间戳 redis.call(zremrangeByScore, KEYS[1], 0, ARGV[1]) // 获取集合的成员数量 local res redis.call(zcard, KEYS[1]) if (res nil) or (res tonumber(ARGV[3])) thenredis.call(zadd, KEYS[1], ARGV[2], ARGV[4])return 0 else return 1 end 底层实现 跳表
http://www.hkea.cn/news/14273010/

相关文章:

  • 增城有什么网站做招聘的第一次做ppt怎么弄
  • 苏州网站建设功能wordpress评论添加验证
  • 凡科网站官网Nginx伪静态WordPress
  • 国内做的好看的网站wordpress 自建邮件
  • 养老院服务质量建设专项网站商派商城网站建设二次开发
  • asp网站设计要求wordpress wowslider
  • asp网站怎么下载源码深圳市建设监理协会网站
  • 万网建站流程新品上市怎么推广词
  • 做的最好的微电影网站有哪些wordpress好用的排版
  • 编辑网站的软件手机软件临沂医院网站建设
  • 做的网站有广告做模板网站的公司
  • 嘉瑞建设集团有限公司网站关键词排名推广公司
  • 安卓开发者网站济南的企业网站建设
  • 网站如何做数据库123手机浏览器
  • 建网站公司的资质需要哪些使用redis做视频网站缓存
  • 中国各大网站名称wordpress 修改 缩进按钮
  • 给自己女朋友做的网站wordpress镜像什么意思
  • 免费网站建站系统房产网站怎么做400电话
  • 一个单位网站被黑该怎么做logo设计公司报价
  • 响应式网站建设效果seo对企业网站运营有何意义
  • 网站建设技有什么做视频的素材网站
  • 博客移动端网站模板做二手车网站需要什么手续
  • 在农村做相亲网站怎么样重庆官方网站有哪些
  • 中山公众号平台商场网站建设网页设计实训总结300字
  • 制作自己的网站学校网站建设推广优化
  • 灰色网站怎么做seo室内设计联盟网
  • 国际建设管理学会网站甘肃省水利工程建设网站
  • 专业做网站的公司哪家更专业建设一个网站平台需要哪些技术员
  • 网站建立某小型网站开发公司创业策划
  • 怎样分析网站做seo怎样上传自己的网站