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

网站建站费用智能魔方网站

网站建站费用,智能魔方网站,服装网站建设案例分析,展厅设计平面布置图目录 1、背景2、SDS底层实现 1、背景 redis作为高性能的内存数据库#xff0c;对字符串操作#xff08;如键、值的存储#xff09;有极高的要求。c语言原生字符串#xff08;以\0结尾的字符串数据#xff09;有一些缺点#xff1a;长度计算需要遍历#xff08;O(n)时间… 目录 1、背景2、SDS底层实现 1、背景 redis作为高性能的内存数据库对字符串操作如键、值的存储有极高的要求。c语言原生字符串以\0结尾的字符串数据有一些缺点长度计算需要遍历O(n)时间复杂度、频繁内存重分配、二进制不安全、无缓冲区管理。为了解决这些问题redis使用了SDS(Simple Dynamic String)在兼容c字符串的同时提供了更高效、更安全的能力。 2、SDS底层实现 SDS底层结构体如下 //redis 5已弃用 struct __attribute__ ((__packed__)) sdshdr5 {unsigned char flags; /* 3 lsb of type, and 5 msb of string length */char buf[]; };//存储长度范围0~2552的8次方减1 struct __attribute__ ((__packed__)) sdshdr8 {uint8_t len; /* used */uint8_t alloc; /* excluding the header and null terminator */unsigned char flags; /* 3 lsb of type, 5 unused bits */char buf[]; };//存储长度范围256~655352的16次方减1 struct __attribute__ ((__packed__)) sdshdr16 {uint16_t len; /* used */uint16_t alloc; /* excluding the header and null terminator */unsigned char flags; /* 3 lsb of type, 5 unused bits */char buf[]; };//存储长度范围656536~2^32-1 struct __attribute__ ((__packed__)) sdshdr32 {uint32_t len; /* used */uint32_t alloc; /* excluding the header and null terminator */unsigned char flags; /* 3 lsb of type, 5 unused bits */char buf[]; };//存储长度范围大于等于2^32字节 struct __attribute__ ((__packed__)) sdshdr64 {uint64_t len; /* used */uint64_t alloc; /* excluding the header and null terminator */unsigned char flags; /* 3 lsb of type, 5 unused bits */char buf[]; };根据存储字符串的大小使用不同的sdshdr结构其字段含义为 字段名含义len字符串实际长度已用字节数alloc分配的总容量不包括头部和结尾的\0flagsSDS类型buf[]存储实际数据 flags代表的宏定义如下 #define SDS_TYPE_5 0 #define SDS_TYPE_8 1 #define SDS_TYPE_16 2 #define SDS_TYPE_32 3 #define SDS_TYPE_64 4SDS的特性如下 特性实现原理O(1)长度获取直接读取len字段无需遍历二进制安全通过len记录字节数而非依赖\0可存储任意二进制数据内容预分配扩容时按规则分配额外空间减少重分配次数惰性释放缩容时不立即释放内存通过alloc字段记录剩余空间供后续操作复用兼容c字符串在buf末尾自动追加\0可直接传递buf给c函数
http://www.zqtcl.cn/news/196748/

相关文章:

  • 网站建设和风险分析简单网页制作代码模板
  • 照片展示网站那个网站可以做攻略
  • 优秀网站设计赏析万网网站备案多久
  • 网站维护服务有哪些电商网站
  • 部门网站建设总结鼎城网站建设
  • 制作网站的模板下载大型商城购物平台开发
  • wordpress 分类文章置顶整站优化推广品牌
  • 网站手机验证码如何做官方网站在家做兼职
  • 东莞三合一网站制作网站建设 千助
  • 114网站做推广怎么样江苏建设培训网站
  • 如何让网站做网页适配网站上的产品五星怎样做优化
  • 怎么做网站排名优化免费jq网站模板
  • 源码时代培训机构官网自己建网站怎么做seo
  • 宜都网站制作济南比较大的网站制作公司
  • 怎么用电脑做网站主机假网站怎么制作
  • 网站 微信网络营销方案设计心得
  • 淘宝客 wordpress网站wordpress类似的工具
  • 农村建设房子建设网站建设渭南房产网站制作
  • php网站开发用什么win2008 iis 新建网站
  • 中山营销网站建设杭州网站建设开发有限公司
  • 被他人备案后做违法网站抖音seo推广
  • 手机网站广告代码南靖县建设局网站
  • 郑州网站建设智巢高德地图有外资背景吗
  • 网站开发常遇到客户问题wordpress怎么升级
  • 网站的空间是网站 建设 维护 公司
  • 关于网站建设的书籍网站设计的趋势
  • 临漳+网站建设深圳国贸网站建设
  • 安全的南昌网站制作上海网站建设网
  • 360网站制作潍坊医疗网站建设方案
  • 深圳网站策划公司域名解析暂时失败