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

请问哪里可以做网站wordpress升级插件出现意外错误

请问哪里可以做网站,wordpress升级插件出现意外错误,怎样才能做自己的网站,快速建站框架文章目录 1. 过期key处理1.1 惰性删除1.2 周期删除 2. 内存淘汰策略 Redis 中数据过期策略采用定期删除惰性删除策略结合起来#xff0c;以及采用淘汰策略来兜底。 定期删除策略#xff1a;Redis 启用一个定时器定时监视所有的 key#xff0c;判断key是否过期#xff0c;过… 文章目录 1. 过期key处理1.1 惰性删除1.2 周期删除 2. 内存淘汰策略 Redis 中数据过期策略采用定期删除惰性删除策略结合起来以及采用淘汰策略来兜底。 定期删除策略Redis 启用一个定时器定时监视所有的 key判断key是否过期过期的话就删除。这种策略可以保证过期的 key 最终都会被删除但是也存在严重的缺点每次都遍历内存中所有的数据非常消耗 CPU 资源并且当 key 已过期但是定时器还处于未唤起状态这段时间内 key 仍然可以用。 惰性删除策略在获取 key 时先判断 key 是否过期如果过期则删除。这种方式存在一个缺点如果这个 key 一直未被使用那么它一直在内存中其实它已经过期了会浪费大量的空间。 这两种策略天然的互补结合起来之后定时删除策略就发生了一些改变不在是每次扫描全部的 key 了而是随机抽取一部分 key 进行检查这样就降低了对 CPU 资源的损耗惰性删除策略互补了为检查到的key基本上满足了所有要求。但是有时候就是那么的巧既没有被定时器抽取到又没有被使用这些数据又如何从内存中消失没关系还有内存淘汰机制当内存不够用时内存淘汰机制就会上场。 内存淘汰机制内存淘汰机制就保证了在redis的内存占用过多的时候去进行内存淘汰也就是删除一部分key保证redis的内存占用率不会过高。 redis 提供 6种数据淘汰策略volatile-lru从已设置过期时间的数据集server.db[i].expires中挑选最近最少使用的数据淘汰volatile-ttl从已设置过期时间的数据集server.db[i].expires中挑选将要过期的数据淘汰volatile-random从已设置过期时间的数据集server.db[i].expires中随机移除keyallkeys-lru当内存不足以容纳新写入数据时在键空间中移除最近最少使用的key这个是最常用的allkeys-random从数据集server.db[i].dict中任意选择数据淘汰noeviction当内存不足以容纳新写入数据时新写入操作会报错无法写入新数据一般不采用4.0版本后增加以下两种volatile-lfu从已设置过期时间的数据集(server.db[i].expires)中挑选最不经常使用的数据淘汰allkeys-lfu当内存不足以容纳新写入数据时在键空间中移除最不经常使用的key 1. 过期key处理 Redis之所以性能强最主要的原因就是基于内存存储。然而单节点的Redis其内存大小不宜过大会影响持久化或主从同步性能。我们可以通过修改配置文件来设置Redis的最大内存当内存使用达到上限时就无法存储更多数据了。为了解决这个问题Redis提供了一些策略实现内存回收内存过期策略在学习Redis缓存的时候我们说过可以通过expire命令给Redis的key设置TTL存活时间 可以发现当key的TTL到期以后再次访问name返回的是nil说明这个key已经不存在了对应的内存也得到释放。从而起到内存回收的目的。Redis本身是一个典型的key-value内存存储数据库因此所有的key、value都保存在之前学习过的Dict结构中。不过在其database结构体中有两个Dict一个用来记录key-value另一个用来记录key-TTL。 这里有两个问题需要我们思考Redis是如何知道一个key是否过期呢利用两个Dict分别记录key-value对及key-ttl对是不是TTL到期就立即删除了呢 1.1 惰性删除 惰性删除顾明思议并不是在TTL到期后就立刻删除而是在访问一个key的时候检查该key的存活时间如果已经过期才执行删除。 1.2 周期删除 周期删除顾明思议是通过一个定时任务周期性的抽样部分过期的key然后执行删除。执行周期有两种Redis服务初始化函数initServer()中设置定时任务按照server.hz的频率来执行过期key清理模式为SLOWRedis的每个事件循环前会调用beforeSleep()函数执行过期key清理模式为FAST 周期删除顾明思议是通过一个定时任务周期性的抽样部分过期的key然后执行删除。执行周期有两种Redis服务初始化函数initServer()中设置定时任务按照server.hz的频率来执行过期key清理模式为SLOWRedis的每个事件循环前会调用beforeSleep()函数执行过期key清理模式为FAST SLOW模式规则 执行频率受server.hz影响默认为10即每秒执行10次每个执行周期100ms。执行清理耗时不超过一次执行周期的25%.默认slow模式耗时不超过25ms逐个遍历db逐个遍历db中的bucket抽取20个key判断是否过期如果没达到时间上限25ms并且过期key比例大于10%再进行一次抽样否则结束FAST模式规则过期key比例小于10%不执行 执行频率受beforeSleep()调用频率影响但两次FAST模式间隔不低于2ms执行清理耗时不超过1ms逐个遍历db逐个遍历db中的bucket抽取20个key判断是否过期如果没达到时间上限1ms并且过期key比例大于10%再进行一次抽样否则结束 小总结RedisKey的TTL记录方式在RedisDB中通过一个Dict记录每个Key的TTL时间过期key的删除策略惰性清理每次查找key时判断是否过期如果过期则删除定期清理定期抽样部分key判断是否过期如果过期则删除。定期清理的两种模式SLOW模式执行频率默认为10每次不超过25msFAST模式执行频率不固定但两次间隔不低于2ms每次耗时不超过1ms 2. 内存淘汰策略 内存淘汰就是当Redis内存使用达到设置的上限时主动挑选部分key删除以释放更多内存的流程。Redis会在处理客户端命令的方法processCommand()中尝试做内存淘汰 淘汰策略Redis支持8种不同策略来选择要删除的key noeviction 不淘汰任何key但是内存满时不允许写入新数据默认就是这种策略不推荐使用。volatile-ttl 对设置了TTL的key比较key的剩余TTL值TTL越小越先被淘汰allkeys-random对全体key 随机进行淘汰。也就是直接从db-dict中随机挑选volatile-random对设置了TTL的key 随机进行淘汰。也就是从db-expires中随机挑选。allkeys-lru 对全体key基于LRU算法进行淘汰volatile-lru 对设置了TTL的key基于LRU算法进行淘汰allkeys-lfu 对全体key基于LFU算法进行淘汰volatile-lfu 对设置了TTL的key基于LFI算法进行淘汰比较容易混淆的有两个 LRULeast Recently Used最少最近使用。用当前时间减去最后一次访问时间这个值越大则淘汰优先级越高。LFULeast Frequently Used最少频率使用。会统计每个key的访问频率值越小淘汰优先级越高。 可以通过在Redis的配置文件中设置maxmemory-policy选项来选择合适的内存淘汰策略。 例如将其设置为allkeys-lru maxmemory-policy allkeys-lru
http://www.dnsts.com.cn/news/220803.html

相关文章:

  • 建设社团网站的可行性分析万能浏览器app
  • 江门专业做网站天山路街道网站建设
  • 你对网站第一印象delphi7网站开发
  • 拓之朴 做网站多少钱php网站开发实例教程百度
  • wap网站制作怎么做动态域名可以做网站吗
  • 选图片的网站自建电商平台
  • 网站内文章标题格式装个宽带多少钱
  • 湖南省住房和城乡建设厅网站创建微信公众号需要什么
  • 网站建设叁金手指花总1家装网站建设
  • 大学网站建设公司电信备案网站
  • 通付盾 网站建设酒店如何做网站
  • 建站系统开发网站的流量建设
  • 阿里云注册域名北京seo优化分析
  • 西双版纳傣族自治州海拔多少百度seo网站
  • 网站制作 连云港注册安全工程师注册管理系统官网
  • 南昌seo推广外包郑州seo顾问热狗
  • 网站基本建设小程序制作方案书
  • 福州市城乡建设发展总公司网站深圳网络营销公司
  • 众筹平台网站搭建济宁做网站的
  • 免费做网站的网页扬中吧百度贴吧
  • 郴州企业网站建设制作手机装修设计图制作软件
  • 建设工程合同管理多少分及格网站优化方案教程
  • 做影视网站推荐哪个服务器苏州保洁公司哪家比较好
  • 网站设计 wordpress免费行情软件app网站mnw下载
  • 如何优化网站打开速度利用vps做网站
  • 东圃网站建设好看的企业官网
  • 网站如何免费做SEO优化普通网站要什么费用
  • 做男女之间的事情的网站南昌企业网站建设费用
  • 山东舜玉建设工程有限公司网站富锦网站
  • 微科技h5制作网站模板网站建设到一半想换一家