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

网站开发工具软件品牌设计作品集

网站开发工具软件,品牌设计作品集,网站建设与单位干部作风的关系,wordpress 读取图片慢1.Redis的应用场景 Redis支持类型#xff1a;String、hash、set、zset、list String类型 hash类型 set类型 zset类型 list类型 一般用作缓存#xff0c;例如 如何同时操作同一功能 2.redis是单线程 Redis服务端(数据操作)是单线程#xff0c;所以Redis是并发安全的,因…1.Redis的应用场景 Redis支持类型String、hash、set、zset、list String类型 hash类型  set类型 zset类型 list类型 一般用作缓存例如 如何同时操作同一功能  2.redis是单线程 Redis服务端(数据操作)是单线程所以Redis是并发安全的,因为无论客户端有多少个请求线程在Redis执行命令时还是顺序执行 但是I/O线程(网络请求)在Redis6.0版本之前是和服务端共用一个线程Redis6.0版本之后就和Redis服务端不共用。 所以如果删除key或者新增key时若数据量很大会造成阻塞因为命令排队执行 3. redis底层结构 Redis由key-value形式存储在哈希字典dict中。 key通过hash算法转换为数字根据下标存储在数组中但是也会存在不同的key通过hash算法计算出相同下标此时会对相同下标进行链表存储若数组长度大于64且链表大于8则会转换为红黑树存储当红黑树长度为6时则会自动转换为链表式存储。【hashmap的底层】 dict由两个数组(ht[0]/ht[1])、重新哈希索引构成。而数组ht[0]则是由dictEntry链表、数组大小、数组已用大小构成。dictEntry由key、value、next(下一个指针)组成。 扩容rehash 每个数据库中都有一个dict存储key-value数据维护了两张hash表。正常使用0号表若需要扩容rehash时需要0号表和1号表共同使用。查询时先从0号表中找后判断是否在rehash若在rehash则从1号表找若不在则直接返回插入时若发生rehash时插入到1号表若未发生rehash时则插入到0号表。 key是字符串类型value可以是String、list、set、zset、hash。 字符串String type:String encoding:raw/embstr、int 对应的内部结构是sds、int sds:简单动态字符串和Java的StringBuffer类似可自动分配内存及释放内存 其他类型TODO 4.set命令使用时一般会对key设置过期时间 set命令若是没有对key设置过期时间一般默认永不过期所以一般redis用作缓存时读取到数据后会将数据清除或者对数据设置过期时间 5. redis过期策略 当redis所用内存超过maxmemory时会触发主动清理策略所以若未出现误操作redis没有过期但是数据还是被删除了原因可能是这个主动清理策略导致的可以看是否是这个原因 此时默认为0表示没有设置最大内存 针对设置过期时间的key volatile-ttl根据过期时间的先后顺序进行删除越早过期越先被删除volatile-random随机删除volatile-lru(least recently used)最近最少使用 volatile-lfu(least frequently used)最近不经常使用针对所有key allkeys-random随机删除allkeys-lru最近最少使用allkeys-lfu最近不经常用不处理 noeviction不会删除数据只是再次访问提示报错 一般都使用lru算法但热点数据会使用lfu算法 过期可以删除策略 惰性删除 key过期时是不会检查的只有再次访问到key时(get命令)才会检测是否已过期过期则会删除但是不是会访问全部key的所以存在大量过期key未被删除占用内存 定期删除 每隔一段时间检测key是否过期过期则删除可通过配置时间间隔(set命令的过期时间)来调整视项目情况而定 定时删除 通过集合及定时器来删除(zadd命令)对每个过期时间的key建一个定时器到过期时间则删除key所以耗CPU影响服务的响应时间 Redis将惰性删除和定期删除的结合使用 6.redis主从、哨兵、集群 主从 主节点(master)提供对外服务从节点(slave)主要是备份当master挂了运维人员会介入将其他slave中的一台作为master待之前挂掉的master恢复后以slave模式启动以当前master为主节点ABC三个节点开始A为masterBC为slave节点当A挂掉时将C作为主节点AB为从节点继续工作 哨兵 哨兵集群会随时监控master节点与slave节点的状态及情况当master节点挂掉时会自动判断哪台slave节点作为master节点并将其他节点改为以master节点为首的slave节点所以哨兵模式不需要运维介入自己执行但是时间就说不准可能几秒或十几秒的。当有客户端请求访问优先发给哨兵判断哪台为master节点得到结果后再去访问master节点。因为哨兵模式是自己执行所以时间不确定若此时有请求进来会造成瞬间访问断联的情况。每个节点的内存不宜过大因为持久化文件过大导致主从数据同步非常慢。 集群 集群主要解决高并发操作集群由多个分片构成的每个master存储不同的数据各master之间是互通的可以检测心跳当出现某一个分片的master挂掉该分片下面的某一个slave会调整为master节点其他节点会调整为slave节点。 redis集群数据hash分片 redis集群将数据分为16384个槽位每个节点占用一部分槽位槽位信息存储在每个节点 客户端发送请求后会先根据key计算出hash值后除以16384取余得到所在节点的位置 redis集群的节点超时限制 若由于网络信号问题出现检测不到其中master节点信息此时会自动判断并选举新的master节点。若出现网络频繁抖动则会频繁主从切换。此时可配置节点超时信息配置 redis.conf配置文件 cluster-node-timeout 15000 redis集群的master节点要大于3个 当集群中一个分片的master挂掉后该下面的slave节点选举是由其他分片的master节点参与的要大于集群的一半的master节点同意才可选举成功。
http://www.eeditor.cn/news/118464/

相关文章:

  • 网站建设朱宁网站开发公司招聘
  • 司法网站建设与维护 教材重庆装修公司前十强
  • 北京网站seo哪家公司好wordpress安装显示404
  • 求免费网站能看的2021服饰品牌网站建设
  • 网站建设推广好处搜索百度指数
  • 担保公司网站建设汇报网上做效果图
  • 北京网站建设方案品牌公司中职网站建设与管理
  • 网页网站设计公司有哪些百度手机版下载
  • 免费英文 网站模板观山湖网站建设
  • c2c模式的网站网站上线前应该备案吗
  • 深圳网站建设加盟水果网络营销策划方案
  • 湖州市建设局网站6下列哪个不属于网页制作工具
  • 郑州网站制作哪家便宜上海城乡建设和住房建设官网
  • 手机wap网站模板免费下载西宁做网站建设公司哪家好
  • 深圳建站公司品牌网站建设网站模版安装教程
  • 四川建设厅证网站是腾讯云网站搭建
  • 做彩妆网站的公司网页设计流程顺序
  • 深圳外包企业网站网站推广软件预期效果
  • 营销型建设网站公司专业建设公司网站
  • vs sql server网站开发陕西省网站开发
  • 网站建设怎么报价怀化租房网站
  • 所有搜索引擎蜘蛛不来网站了网站建设如何找客户
  • html5手机app网站模板免费下载wordpress评分插件
  • 做销售用什么网站网页制作素材服装类
  • 嵌入式转行到网站开发小程序登录后怎么退出
  • 做社群最好的网站源码深圳保障房
  • 横向网站源码网上免费网站的域名
  • 网站源码如何使用上海网站建设解决方案
  • 高端网站优化公司如何添加百度指数
  • wordpress程序网站wordpress主题模块添加图片尺寸