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

临沂网站seo百度一下你就知道官网网址

临沂网站seo,百度一下你就知道官网网址,怎么做彩票网站,做教育培训网站需要资质么最近面试的时候被问到Redis 的二进制安全相关八股文面试题。Redis二进制安全内容比较多,以下是简单的总结大致的过程,需要深入学习的建议跳过 Redis是基于C语言进行开发的,而C语言中的字符串是二进制不安全的,所以Redis就没有直接…

最近面试的时候被问到Redis 的二进制安全相关八股文面试题。Redis二进制安全内容比较多,以下是简单的总结大致的过程,需要深入学习的建议跳过

Redis是基于C语言进行开发的,而C语言中的字符串是二进制不安全的,所以Redis就没有直接使用C语言的字符串,而是自己编写了一个新的数据结构来表示字符串,这种数据结构称之为简单动态字符串(Simple dynamic string),简称sds。

在C语言中,字符串采用的是一个char数组(柔性数组)来存储字符串,而且字符串必须要以一个空字符串\0来结尾。字符串并不记录长度,所以如果想要获取一个字符串的长度就必须遍历整个字符串,直到遇到第一个\0为止(\0不会计入字符串长度),故而获取字符串长度的时间复杂度为O(n)。

正因为C语言中是以遇到的第一个空字符\0来识别是否到了字符串末尾,因此其只能保存文本数据,不能保存图片、音频、视频和压缩文件等二进制数据,否则可能出现字符串不完整的问题,所以其是二进制不安全的。

Redis中为了实现二进制安全的字符串,对原有C语言中的字符串实现做了改进。如下所示就是一个旧版本的sds字符串的结构定义:

struct sdshdr{int len;//记录buf数组已使用的长度,即SDS的长度(不包含末尾的'\0')int free;//记录buf数组中未使用的长度char buf[];//字节数组,用来保存字符串
}

经过改进之后,如果想要获取sds的长度不用去遍历buf数组了,直接读取len属性就可以得到长度,时间复杂度一下就变成了O(1),而且因为判断字符串长度不再依赖空字符\0,所以其能存储图片、音频、视频和压缩文件等二进制数据,不用担心读取到的字符串不完整。

以上是基于个人总结,如果发现有误,请指出,我立即更正。

http://www.wooajung.com/news/774.html

相关文章:

  • 网站建设怎么申请域名网络营销的营销方式是什么
  • jquery动画特效网站seo关键词挖掘工具
  • 今日头条wordpress主题seo怎样才能优化网站
  • TP5.1做的网站首页被挂马原因最近一周的国内新闻
  • 烟台 o2o平台带动做网站行业简述网络推广的方法
  • 徐州建设工程招投标官方网站搜索引擎排名2020
  • 自家电脑做网站服务器w7花生壳互联网医疗的营销策略
  • 内网站做映射上海知名网站制作公司
  • 做竞价网站访问突然变少网站交易平台
  • 网站后台管理系统展望百度人工服务24小时热线电话
  • 设计制作一个网站seo岗位
  • 男人和女人做性网站优化教程网下载
  • 宜春网站建设公司哪家好seo外链增加
  • 备案做电影网站吗青岛网站建设公司哪家好
  • 成都航空公司官方网站免费网站安全检测
  • wordpress 软件下载主题优化关键词的方法正确的是
  • wordpress 图片放大seo页面优化技术
  • 数据库做后台网站长尾词优化外包
  • 网站的运行与维护推广运营平台
  • 网站打开慢怎么回事河北百度推广电话
  • 济南网站搜索优化山东做网站
  • 泉州网站设计找哪家单页网站seo如何优化
  • 怎样做网站链接免费推广网站2024
  • 旅游电子商务网站开发2345软件为什么没人管
  • 重庆网站建设changeke今日最新国际新闻头条
  • 顺义区做网站的公司深圳疫情最新情况
  • 如何做收费影视资源网站搜索排名优化软件
  • 欣赏别人做的网站seo机构
  • 网站建设建站流程方案广东seo点击排名软件哪里好
  • 网站开发哪种框架网络营销师证书查询