怎么做网站的外部连接您在工信部门备案网站获取的icp备案号

pingmian/2025/10/8 14:37:54/文章来源:
怎么做网站的外部连接,您在工信部门备案网站获取的icp备案号,电商 网站开发 哪个好,专门做娱乐场所的设计网站String编码转换底层原理 String对象为什么把大于39字节或者44字节的字符串编码为raw#xff0c;小于的时候编码为embstr? 在Redis3.2以前的版本中,SDS作为字符串类型中存储字符串内容的结构#xff0c;源码如下#xff1a; 3.2版本SDS结构 struct sdshdr {// 记录buf数…String编码转换底层原理 String对象为什么把大于39字节或者44字节的字符串编码为raw小于的时候编码为embstr? 在Redis3.2以前的版本中,SDS作为字符串类型中存储字符串内容的结构源码如下 3.2版本SDS结构 struct sdshdr {// 记录buf数组中已使用字节的数量// 等于SDS保存字符串的长度 4byteint len;// 记录buf数组中未使用字节的数量 4byteint free;// 字节数组用于保存字符串 字节\0结尾的字符串占用了1bytechar buf[]; }Redis对象头 一个字符串对象不仅仅包含SDS结构还包含了RedisObject(Redis对象头)这时每个Redis对象都要携带的一种结构跟Java对象类似Java对象也有相应的对象头它的结构如下 // Redis对象 typedef struct redisObject {// 类型 4bits; 即【String、List、Hash、Set、Zset】中的一个unsigned type:4// 编码方式 4 bits, encoding表示对象底层所使用的编码unsigned encoding:4;// LRU时间(相对于server.lrulock) 24bits;unsigned lru:24;// 引用计数 Redis里面的数据可以通过引用计数进行共享 32bitsint refcount;// 指向对象的值 64bitvoid* ptr; } robj; // 16bytes操作系统中的内存分配 由于操作系统使用jmalloc和tmalloc进行内存的分配而内存分配的单位都是2的N次方所以是2,4,8,16,32,64,如果Redis采取32字节分配的化那么32-16(RedisObject)-9(3.2版本的SDS)7,相当于可使用字节数为7字节Redis认为太过于小了所以Redis采取分配的是64字节即64-2539。 SDS结构优化 在Redis之后的版本中为了进一步优化字符串对象在一次操作系统的内存分配中扩大可使用的空间又将sdshdr分为了sdshdr5、sdshdr8、sdshdr16、sdshdr32、sdshdr64结构如下 struct __attribute__ ((__packed__)) sdshdr5 {unsigned char flags; /* 3 lsb of type, and 5 msb of string length */char buf[]; }; 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[]; }; 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[]; }; 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[]; }; 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[]; }; // 一些变量的定义 #define SDS_TYPE_5 0 #define SDS_TYPE_8 1 #define SDS_TYPE_16 2 #define SDS_TYPE_32 3 #define SDS_TYPE_64 4结构示例图 sdshdr5的结构如图 sdshdr8的结构如图 疑惑解答 有人可能会问既然分出来这么多的结构如果用sdshdr5的结构那么64-16-1-146个字节跟平常说的44个字节不一样如果我们用sdshdr5的结构那么这个结构的flags中只有5个bit可以让我们使用 表示的空间地址就是2^532个长度表示的空间太小了所以我们得用sdshdr8的结构那么可以表示的空间地址 将会是2^8256但实际上在Redis内部中键是使用sdshdr5的结构因为键不大可能会更新而值会经常更新所以干脆直接sdshdr8来表示值对象 Redis6.0新特性 多线程 概述 redis6.0提供了多线程的支持redis6以前的版本严格来说也是多线程只不过执行用户命令的请求是单线程模型还有一些线程用来执行后台任务比如unlink删除大keyrdb持久化等 redis6.0提供了多线程的读写IO,但是最终执行用户命令的线程依然是单线程的这样就没有多线程数据的竞争关系依然很高效 线程模型 redis6.0以前线程执行模式如下操作再一个线程中执行完成 redis6.0线程执行模式: 参数配置 可以通过如下参数配置多线程模型: io-threads 4 // 这里说 有三个IO线程还有一个线程是main线程main线程负责IO读写和命令执行操作默认情况下如上配置有三个IO线程这三个IO线程只会执行IO中的write操作也就是说read和命令执行都由main线程执行最后多线程讲数据写回客户端。 开启了如下参数: io-threadas-do-reads yes // 将支持IO线程执行 读写任务Client side caching(客户端缓存) 概述 redis6提供了服务端追踪key的变化客户端缓存数据的特性这需要客户端实现 执行流程 当客户端访问某个key时服务端将记录key和client客户端拿到数据后进行客户端缓存这时当key再次被访问时key将被直接返回避免了与redis服务器的再次交互节省服务端资源当数据被其他请求修改时服务端将主动通知客户端失效的key客户端进行本地失效下次请求时重新获取最新数据目前只有lettuce对其进行了支持: 代码示例 依赖导入 dependency groupIdio.lettuce/groupId artifactIdlettuce‐core/artifactId version6.0.0.RELEASE/version /dependencyJava代码 public class Main {public static void main(String[] args) {RedisClient redisClient RedisClient.create(redis://127.0.0.1);MapString, String clientCache new ConcurrentHashMap();StatefulRedisConnectionString, String myself redisClient.connect();CacheFrontendString, String frontend ClientSideCaching.enable(CacheAccessor.forMap(clientCache), myself,TrackingArgs.Builder.enabled().noloop));String key csk;int count 0;while (true) {System.out.println(frontend.get(key));TimeUnit.SECONDS.sleep(3);if (count Integer.MAX_VALUE) {myself.close();redisClient.shutdown();}}} }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89992.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站后台这么做南京江宁区住房建设局网站

一、多样输出支持CanalSharp.AspNetCore是一个基于CanalSharp的适用于ASP.NET Core的一个后台任务组件,它可以随着ASP.NET Core实例的启动而启动,目前采用轮询的方式对Canal Server进行监听,获得MySql行更改(RowChange&#xff09…

腾讯云和wordpress网络优化岗位详细介绍

PathPercent 是一个QML类型,它表示 Path 上的一个百分比位置。这个类型通常在 PathAnimation 或 PathInterpolator 中使用,以便在路径上产生一个特定的位置。它提供了一种方式来表示在 Path 元素上的某个点。通过 PathPercent,你可以指定一个百分比,来表示沿着路径的位置,…

microsoft做网站个人 建设图片分享网站

计算机在材料科学中的应用-上机实验二实验二 Office使用技巧?1 Word工具栏的增删与了解其主要作用(1) ? 把“常用”和“格式”工具栏打开(一般情况下是打开的!),拖动到合适地方。打开和关闭“符号栏1”和“符号栏2”,了解其主要作用。步骤&…

临沂兰山网站建设重庆市住房和城乡建设厅官网

文章目录 一、函数模板与普通函数区别1、函数模板与普通函数区别2、代码示例 - 函数模板与普通函数区别 一、函数模板与普通函数区别 1、函数模板与普通函数区别 函数模板与普通函数区别 : 主要区别在于它们能够处理的 数据类型数量 和 灵活性 ; 自动类型转换 : 函数模板 不允许…

如何把网站做跳转浏览器链接wordpress数据库域名表

最近在学习latex,将之前的机器学习基础知识相关的笔记用latex整理了以下,源地址如下: https://github.com/duankai/latex_book,感兴趣的可以自由下载,也可以随意使用latex的格式。 pdf 效果如下,文件可在h…

唐汉网站建设辽阳网站设计

机器学习 引言 介绍机器学习的重要性和应用领域。简要说明机器学习与人工智能的关系。 在当今迅速发展的技术世界中,机器学习已经成为一项不可或缺的技术,它正在改变我们解决问题和理解世界的方式。机器学习,作为人工智能(AI&a…

网站开发的目的和意义无网站做百度推广

vue-cli 生成的项目通常集成Webpack ,在打包的时候,需要webpack来做一些事情。这里我们希望它可以压缩代码体积,提高运行效率。 文章目录 (1)代码压缩:(2)图片压缩:&…

做网站每年运营要花掉多少钱网站页面建设方案书模板

安装与配置 安装 RabbitMQ 读者可以在 RabbitMQ 官方文档中找到完整的安装教程:Downloading and Installing RabbitMQ — RabbitMQ 本文使用 Docker 的方式部署。 RabbitMQ 社区镜像列表:https://hub.docker.com/_/rabbitmq 创建目录用于映射存储卷…

青岛 网站开发建设网站需要几个步骤

文章目录 前言一、试过的方法二、最终使用的方法1.先极坐标变换2.计算斜率 总结 前言 想了挺久,一直没解决这个问题。后面勉强解决了。 一、试过的方法 1.想用圆度来解决,后来发现圆度差值很小,完整的圆圆度0.89,然后有缺角的圆圆…

诚信通国际网站怎么做设计页面纸张大小

客户介绍 某动漫行业公司是一家专注于文化创意领域,致力于为人们提供独特、有趣的文化产品。公司拥有一支充满活力和创造力的团队,他们以卓越的创意和精湛的技术,创造出了一系列令人惊叹的作品。未来,该公司将继续秉承这一理念&a…

70 网站制作0基础做网站

引言 程序调试时,可以通过右侧的视图,看到当前的文件中很多变量的值,然而不小心关闭后,不知怎么恢复,搞了几分钟,现在记录一下。 方式 在QtCreate编译器的菜单栏中有一个“控件”---->“视图”&#…

马克·扎克伯格大学做的网站综合电商网站建设需求文档

据游戏工委数据统计,2023年国内游戏市场实际销售收入与用户规模双双创下新高,游戏普遍采用多端并发方式,成为收入增长的主因之一。 中国市场实际销售收入及增长率丨数据来源:游戏工委 多端互通既是机遇,也是挑战。从游…

网站开发面试内容产品网络营销方案

源码介绍本源码对接高德z地图开发者平台的API实现获取IP和天气数据并使用php将天气的图标与文字相结合,形成一张IP签名档图片,最后呈现出来使用说明首先去高德开放平台申请KEY,点击右上角的注册按钮并登录账号,进入控制台&#xf…

个人简历网站模板下载邯郸网站建设

小编介绍:10年专注商业模式设计及软件开发,擅长企业生态商业模式,商业零售会员增长裂变模式策划、商业闭环模式设计及方案落地;扶持10余个电商平台做到营收过千万,数百个平台达到百万会员,欢迎咨询。 区块…

高端网站设计企业视频网站 wordpress主题

v-if 指令&#xff1a;用于控制元素的显示或隐藏。 执行条件&#xff1a;当条件为 false 时&#xff0c;会将元素从 DOM 中删除。 应用场景&#xff1a;适用于显示隐藏切换频率较低的场景。 语法格式&#xff1a; <div v-if"数据">内容</div> 基础用…

wordpress站内搜索统计个人网站 备案

函数 引用式声明(函数原型):简称声明&#xff0c;指定了函数的返回值类型、函数的接受参数类型&#xff0c;这些叫函数的签名。与变量相同&#xff0c;在函数声明时编译器不会为函数分配内存。函数的返回值类型在C99之前若不指明则默认隐式转换为为int类型&#xff0c;但在C99…

网站建设与管理ppt模板下载视频交易类网页

&#xff08;总结自b站黑马程序员课程&#xff09; 环环相扣&#xff0c;跳过部分章节和知识点是不可取的。 一、镜像结构 镜像是分层结构&#xff0c;每一层称为一个Layer。 ①BaseImage层&#xff1a;包含基本的系统函数库、环境变量、文件系统。 ②Entrypoint&#xff1…

浙江新地标建设集团网站俄罗斯ip

当前&#xff0c;越来越多的企业申请通过信通院的开源治理成熟度评估和认证&#xff0c;获得增强级或先进级评估。这些企业包括中国工商银行股份有限公司、中国农业银行、上海浦东发展银行股份有限公司、中信银行股份有限公司、中国太平洋保险&#xff08;集团&#xff09;股份…

长春网站公司哪家好目前网站开发应用到的技术有什么

Zephy如何移植到单片机 1. Window下搭建开发环境1.1 安装Choncolatey1.2 安装相关依赖1.3创建虚拟python环境1.4 安装west1.4.1 使用 pip 安装 west1.4.2 检查 west 安装路径1.4.3 将 Scripts路径添加到环境变量1.4.4 验证安装 1.5 获取zephyr源码和[安装python](https://so.cs…

sem推广竞价谷歌seo排名优化

css中有丰富多彩的颜色&#xff0c;如何让计算机能知道我们想要的是哪种颜色呢&#xff1f;可以通过以下的颜色单位。 1:在CSS可以直接使用颜色的单词来表示不同的颜色 红色&#xff1a;red 蓝色&#xff1a;blue 绿色&#xff1a;green 黄色&#xff1a;yellow 注意&#…