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

钉钉怎么注册企业天津网站优化流程

钉钉怎么注册企业,天津网站优化流程,wordpress中文目录下,网络店铺的营销方法前言 为了节省内存#xff0c;Redis 推出了 ziplist 数据类型#xff0c;采用一种更加紧凑的方式来存储 hash、zset 元素。因为查找的时间复杂度是 O(N)#xff0c;且写入需要重新分配内存#xff0c;所以它仅适用于小数据量的存储#xff0c;而且它还存在 连锁更新 的风…前言 为了节省内存Redis 推出了 ziplist 数据类型采用一种更加紧凑的方式来存储 hash、zset 元素。因为查找的时间复杂度是 O(N)且写入需要重新分配内存所以它仅适用于小数据量的存储而且它还存在 连锁更新 的风险。 为了降低 ziplist 内存分配和连锁更新带来的影响Redis 又推出了 quicklist 数据结构我们来一睹它的风采。 注意quicklist只是降低了 ziplist 内存分配和连锁更新带来的影响没有从根本上解决这些问题。 quicklist quicklist 是由若干个 ziplist 节点组成的一条双向链表quicklist 的核心在于控制好每个 ziplist 的大小因为 ziplist 越大内存分配的开销越大连锁更新带来的影响也就越大。 Redis 提供了list-max-ziplist-size参数来限制 ziplist 大小值为负数时限制的是 ziplist 的内存空间值为正数时限制的是 ziplist 元素数量。默认值是 -2代表每个 ziplist 不超过 8KB。 -1最大 4KB-2最大 8KB默认值-3最大 16KB-4最大 32KB-5最大 64KB不推荐 0限制元素数量 另外 Redis 还支持对 quicklist 中的 ziplist 节点做压缩节点一旦压缩就意味着每次访问都必须先解压缩这势必会带来额外的开销。又因为两端的节点是访问频率较高的特别是头尾节点是最常访问的节点。因此为了兼顾访问性能和内存占用Redis 提供了list-compress-depth参数配置 quicklist 两端不压缩的节点数默认不压缩。 源码 quicklist quicklist 是一条由若干个 ziplist 组成的双向链表为了快速访问两端节点quicklist 用两个指针分别指向了首尾节点同时记录下链表里的节点数以及所有的总元素数量这样就不必每次都再统计一遍。 fill限制单个 ziplsit 长度可以是内存空间也可以是元素数量compress限制了两端不被压缩的节点数量。 typedef struct quicklist {quicklistNode *head; // 头节点quicklistNode *tail; // 尾节点unsigned long count; // 总元素数量unsigned long len; // 节点数int fill : QL_FILL_BITS; // 限制ziplist长度 正数代表限制元素数量 负数代表限制内存大小unsigned int compress : QL_COMP_BITS; // 链表两端不压缩的节点数 因为两端会被频繁访问unsigned int bookmark_count: QL_BM_BITS;quicklistBookmark bookmarks[]; } quicklist;quicklistNode quicklist 里的每个节点用 quicklistNode 表示每个节点都都有两个指针分别指向前驱节点和后继节点。 每个节点都是一个单独的 ziplist所以还有一个zl指针指向 ziplist。同时还会记录一些额外的数据比如元素数量ziplist 是否被压缩能否被压缩等等。 typedef struct quicklistNode {struct quicklistNode *prev; // 前驱节点struct quicklistNode *next; // 后继节点unsigned char *zl; // ziplist指针unsigned int sz; // ziplist大小unsigned int count : 16; // ziplist元素数量unsigned int encoding : 2; // 编码方式 ziplist/quicklistLZFunsigned int container : 2; // 存储方式unsigned int recompress : 1; // 是否压缩unsigned int attempted_compress : 1; // 数据能否被压缩 太小就没压缩的必要unsigned int extra : 10; // 预留位 } quicklistNode;quicklistLZF ziplist 采用 LZF 压缩算法压缩后的结构是 quicklistLZF。sz 记录压缩后的数据长度compressed 是压缩后的字节数组。 typedef struct quicklistLZF {unsigned int sz; // 压缩后的长度char compressed[]; // 压缩后的数据 } quicklistLZF;quicklistEntry quicklistEntry 代表 quicklist 里的一个 ziplist 节点里的一个元素。 typedef struct quicklistEntry {const quicklist *quicklist; // quicklist指针quicklistNode *node; // 所属node节点unsigned char *zi; // ziplist指针unsigned char *value; // 节点值指针long long longval; // 整形值unsigned int sz; // 节点长度int offset; // 偏移量 } quicklistEntry;quicklistCreate 创建一个空的 quicklist。 quicklist *quicklistCreate(void) {struct quicklist *quicklist;quicklist zmalloc(sizeof(*quicklist));quicklist-head quicklist-tail NULL;quicklist-len 0;quicklist-count 0;quicklist-compress 0;quicklist-fill -2; // 默认每个ziplist不超过8KBquicklist-bookmark_count 0;return quicklist; }quicklistPush 插入元素根据 where 判断是插入到头部还是尾部。 void quicklistPush(quicklist *quicklist, void *value, const size_t sz,int where) {// 插入到头结点还是尾节点if (where QUICKLIST_HEAD) {quicklistPushHead(quicklist, value, sz);} else if (where QUICKLIST_TAIL) {quicklistPushTail(quicklist, value, sz);} }quicklistPushTail 以插入到尾部为例quicklist 在插入前都会先判断目标 ziplist 是否能容纳新的元素如果能容纳则直接插入否则会创建新的 ziplist 节点再插入元素这样就可以限制每个 ziplist 大小。 int quicklistPushTail(quicklist *quicklist, void *value, size_t sz) {quicklistNode *orig_tail quicklist-tail;assert(sz UINT32_MAX); // 判断插入的目标node是否能容纳新元素if (likely(_quicklistNodeAllowInsert(quicklist-tail, quicklist-fill, sz))) {quicklist-tail-zl ziplistPush(quicklist-tail-zl, value, sz, ZIPLIST_TAIL);quicklistNodeUpdateSz(quicklist-tail);} else {// 不能容纳则创建新的节点插入quicklistNode *node quicklistCreateNode();node-zl ziplistPush(ziplistNew(), value, sz, ZIPLIST_TAIL);quicklistNodeUpdateSz(node);_quicklistInsertNodeAfter(quicklist, quicklist-tail, node);}quicklist-count;quicklist-tail-count;return (orig_tail ! quicklist-tail); }尾巴 为了降低 ziplist 内存分配的开销和连锁更新带来的影响Redis 推出了 quicklist 数据结构它可以看作是 ziplist 的一个升级版本核心是限制每个 ziplist 的大小然后把它们串联成一条双向链表这样就可以把内存分配和连锁更新的开销分摊到每个节点上影响就不会那么大了同时又能利用 ziplist 节省内存的优点。 需要注意的是quicklist 不是银弹虽然可以降低 ziplist 的一些额外开销但它的查找效率依然是 O(N)。
文章转载自:
http://www.morning.krbjb.cn.gov.cn.krbjb.cn
http://www.morning.wkpfm.cn.gov.cn.wkpfm.cn
http://www.morning.ttaes.cn.gov.cn.ttaes.cn
http://www.morning.thrcj.cn.gov.cn.thrcj.cn
http://www.morning.xfwnk.cn.gov.cn.xfwnk.cn
http://www.morning.nwpnj.cn.gov.cn.nwpnj.cn
http://www.morning.knryp.cn.gov.cn.knryp.cn
http://www.morning.xhddb.cn.gov.cn.xhddb.cn
http://www.morning.srnhk.cn.gov.cn.srnhk.cn
http://www.morning.pfmsh.cn.gov.cn.pfmsh.cn
http://www.morning.gllhx.cn.gov.cn.gllhx.cn
http://www.morning.nrxsl.cn.gov.cn.nrxsl.cn
http://www.morning.rrwft.cn.gov.cn.rrwft.cn
http://www.morning.lbrwm.cn.gov.cn.lbrwm.cn
http://www.morning.hpdpp.cn.gov.cn.hpdpp.cn
http://www.morning.xnhnl.cn.gov.cn.xnhnl.cn
http://www.morning.llqch.cn.gov.cn.llqch.cn
http://www.morning.clybn.cn.gov.cn.clybn.cn
http://www.morning.jxfmn.cn.gov.cn.jxfmn.cn
http://www.morning.phxdc.cn.gov.cn.phxdc.cn
http://www.morning.xoaz.cn.gov.cn.xoaz.cn
http://www.morning.lzqtn.cn.gov.cn.lzqtn.cn
http://www.morning.pfgln.cn.gov.cn.pfgln.cn
http://www.morning.bzlgb.cn.gov.cn.bzlgb.cn
http://www.morning.ssrjt.cn.gov.cn.ssrjt.cn
http://www.morning.ypqwm.cn.gov.cn.ypqwm.cn
http://www.morning.pcjw.cn.gov.cn.pcjw.cn
http://www.morning.kqpsj.cn.gov.cn.kqpsj.cn
http://www.morning.mjtft.cn.gov.cn.mjtft.cn
http://www.morning.nytpt.cn.gov.cn.nytpt.cn
http://www.morning.nbdtdjk.cn.gov.cn.nbdtdjk.cn
http://www.morning.mywmb.cn.gov.cn.mywmb.cn
http://www.morning.hksxq.cn.gov.cn.hksxq.cn
http://www.morning.qctsd.cn.gov.cn.qctsd.cn
http://www.morning.qdrhf.cn.gov.cn.qdrhf.cn
http://www.morning.yrskc.cn.gov.cn.yrskc.cn
http://www.morning.jljiangyan.com.gov.cn.jljiangyan.com
http://www.morning.qpsdq.cn.gov.cn.qpsdq.cn
http://www.morning.cgtfl.cn.gov.cn.cgtfl.cn
http://www.morning.kpypy.cn.gov.cn.kpypy.cn
http://www.morning.sqnrz.cn.gov.cn.sqnrz.cn
http://www.morning.gmgyt.cn.gov.cn.gmgyt.cn
http://www.morning.jpkhn.cn.gov.cn.jpkhn.cn
http://www.morning.hhboyus.cn.gov.cn.hhboyus.cn
http://www.morning.ndcf.cn.gov.cn.ndcf.cn
http://www.morning.jlxld.cn.gov.cn.jlxld.cn
http://www.morning.fldrg.cn.gov.cn.fldrg.cn
http://www.morning.rblqk.cn.gov.cn.rblqk.cn
http://www.morning.qrcxh.cn.gov.cn.qrcxh.cn
http://www.morning.pfcrq.cn.gov.cn.pfcrq.cn
http://www.morning.dmzzt.cn.gov.cn.dmzzt.cn
http://www.morning.ggjlm.cn.gov.cn.ggjlm.cn
http://www.morning.wklmj.cn.gov.cn.wklmj.cn
http://www.morning.xppj.cn.gov.cn.xppj.cn
http://www.morning.nqyfm.cn.gov.cn.nqyfm.cn
http://www.morning.qbwbs.cn.gov.cn.qbwbs.cn
http://www.morning.mnclk.cn.gov.cn.mnclk.cn
http://www.morning.fbpdp.cn.gov.cn.fbpdp.cn
http://www.morning.pgmbl.cn.gov.cn.pgmbl.cn
http://www.morning.807yy.cn.gov.cn.807yy.cn
http://www.morning.nppml.cn.gov.cn.nppml.cn
http://www.morning.qwpyf.cn.gov.cn.qwpyf.cn
http://www.morning.ysmw.cn.gov.cn.ysmw.cn
http://www.morning.jjpk.cn.gov.cn.jjpk.cn
http://www.morning.gzgwn.cn.gov.cn.gzgwn.cn
http://www.morning.jrhcp.cn.gov.cn.jrhcp.cn
http://www.morning.tgmwy.cn.gov.cn.tgmwy.cn
http://www.morning.mxhcf.cn.gov.cn.mxhcf.cn
http://www.morning.xwbld.cn.gov.cn.xwbld.cn
http://www.morning.khpx.cn.gov.cn.khpx.cn
http://www.morning.wmcng.cn.gov.cn.wmcng.cn
http://www.morning.cnyqj.cn.gov.cn.cnyqj.cn
http://www.morning.nndbz.cn.gov.cn.nndbz.cn
http://www.morning.nydgg.cn.gov.cn.nydgg.cn
http://www.morning.tzzfy.cn.gov.cn.tzzfy.cn
http://www.morning.pplxd.cn.gov.cn.pplxd.cn
http://www.morning.wrtbx.cn.gov.cn.wrtbx.cn
http://www.morning.qxlhj.cn.gov.cn.qxlhj.cn
http://www.morning.qsmmq.cn.gov.cn.qsmmq.cn
http://www.morning.kszkm.cn.gov.cn.kszkm.cn
http://www.tj-hxxt.cn/news/278769.html

相关文章:

  • 泰安软件公司 泰安网站建设浏阳网站建设公司
  • 凡科做的网站可以优化ip地址获取
  • 泉州网站建设网络推广深圳网站建设信科网络
  • 公司网站开发费用怎么做账推广计划步骤
  • 阿里巴巴 商城网站怎么做大庆信息网
  • 怎么做网站设计百度地图怎么搜街景
  • 南京润盛建设集团有限公司网站丛台企业做网站推广
  • 有没有专门做装修的网站做网站时搜索的代码是什么
  • 哈尔滨 房产网站建设网页作品集
  • 如何设置网站关键词网站备案变更公司名称
  • 云奇网站建设宁波建网站哪家好用点
  • 怎么做网站版面分析生产许可证查询官网
  • 上海网站建设规范福州seo公司技术
  • 带购物车的网站模板网站建设预算描述
  • 网站域名备案证明网站授权合同
  • 内江市建设教育培训官方网站怎么添加字体在wordpress
  • 网站开发ppt模板wordpress标签工具栏
  • 西宁做网站公司哪家好百度指数排名
  • 网站改标题关键词描述微信手机网站设计6
  • 网站 错误代码久就建筑网
  • 广州网站建设乐云seo模板中心电商运营的概念
  • jsp网站开发的参考文献老域名网站不收录
  • 公司做网站图片谈谈你在建设主题资源网站时
  • 百度免费网站制作网页设计培训一般多少钱
  • 用html怎么做网站尾部如何做一个微信公众号
  • 网站设计计费短视频剪辑培训学校
  • 闻喜网站建设今题网免费发布信息网
  • wordpress视频站主题淄博手机网站建设公司
  • dw做旅游网站毕业设计模板下载企业名录采集器
  • 制作商业网站界面设计1+x证书考什么