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

网站域名注册地址外贸网站建设基础

网站域名注册地址,外贸网站建设基础,网站制作推广公司,网站色调搭配Redis缓存淘汰策略 1、各种面试题 生产上你们的redis内存设置多少?如何配置、修改redis的内存大小如果内存满了你怎么办#xff1f;redis清理内存的方式?定期删除和惰性删除了解过吗#xff1f;redis缓存淘汰策略有哪些?分别是什么?你用哪个?redis的LRU了解过吗?请手…Redis缓存淘汰策略 1、各种面试题 生产上你们的redis内存设置多少?如何配置、修改redis的内存大小如果内存满了你怎么办redis清理内存的方式?定期删除和惰性删除了解过吗redis缓存淘汰策略有哪些?分别是什么?你用哪个?redis的LRU了解过吗?请手写LRU。lru和lfu算法的区别是什么 2、Redis内存 Redis内存满了怎么办?redis默认内存多少?在哪里查看?如何设置修改? 查看Redis最大占用内存 在redis配置文件中MEMORY MANAGEMENT选项 如果不设置最大内存大小或者设置最大内存大小为0在64位操作系统下不限制内存大小在32位操作系统下最多使用3GB内存。 注意在64bit系统下maxmemory设置为0表示不限制 Redis内存使用 一般推荐Redis设置内存为最大物理内存的四分之三 怎么修改内存大小 修改配置文件然后重启即可。 举例配个100M 可以直接通过命令修改config set maxmemory 104857600当然这个一重启就没有了只是暂时的。 查看redis内存使用情况 info memoryconfig get maxmeory 真要打满了会怎么样? 如果Redis内存使用超出了设置的最大值会怎样? 我们把内存设置成1字节 报OOM的错误。 所以有一个场景没有加上过期时间就会导致数据写满maxmemory为了避免类似情况我们需要内存淘汰策略。 往redis里写的数据是怎么没了的?它如何删除的? redis过期键的删除策略 如果一个键是过期的那它到了过期时间之后是不是马上就从内存中被被删除呢 并不是的 三种不同的删除策略 立即删除。–对CPU不友好用处理器性能换取存储空间(拿时间换空间) Redis不可能时时刻刻都遍历所有被设置了生存时间的key来检查数据是否到了过期时间然后删除它立即删除能保证内存中数据的最大新鲜度因为它保证过期建值会在过期后马上删除它所占的内存也会得到释放。但是立即删除是对CPU一个不小的压力删除操作会占用CPU时间如果此时的CPU正非常的忙比如它正在做交集或者排序计算时就会给CPU造成额外的压力这样会产生大量的性能消耗同时也会影响数据的读取操作。 惰性删除。–对memory不友好用存储空间换取处理器性能拿空间换时间) 数据到达过期时间不做处理等到下次访问该数据时如果未过期返回数据如果已经过期就删除返回不存在。 惰性删除的缺点就是太占内存。 如果一个键已经过期而这个键又仍然保留在redis中那么只要这个过期键不被删除它所占用的内存就不会释放。 在使用惰性删除策略时如果数据库中有非常多的过期键而这些过期键又恰好没有被访问到的话那么它们也许永远也不会被删除(除非用户手动执行FLUSHDB)我们甚至可以将这种情况看作是一种内存泄漏-无用的垃圾数据占用了大量的内存而服务器却不会自己去释放它们这对于运行状态非常依赖于内存的Redis服务器来说,肯定不是一个好消息。 开启惰性淘汰lazyfree-lazy-evictionyes 上面俩方案都极端折中一下----定期删除 定期删除策略是前两种方案的折中 定期删除策略每隔一段时间执行一次删除过期键操作并通过限制删除操作执行时长和频率来减少删除操作对CPU时间的影响。 周期性轮询redis库中的时效性数据采用随机抽取的策略利用过期数据占比的方式控制删除频度 特点1:CPU性能占用设置有峰值检测频度可自定义设置 特点2:内存压力不是很大长期占用内存的冷数据会被持续清理总结:周期性抽查存储空间随机抽查重点抽查) redis默认每隔100ms检查是否有过期的key有过期key则删除。注意: redis不是每隔100ms将所有的key检查一次而是随机抽取进行检查(如果每隔100ms,全部key进行检查redis直接进去ICU)。因此如果只采用定期删除策略会导致很多key到时间没有删除。 定期删除策略的难点是确定删除操作执行的时长和频率:如果删除操作执行得太频繁或者执行的时间太长定期删除策略就会退化成立即删除策略以至于将CPU时间过多地消耗在删除过期键上面。如果删除操作执行得太少或者执行的时间太短定期删除策略又会和惰性删除束略一样出现浪费内存的情况。因此如果采用定期删除策略的话服务器必须根据情况合理地设置删除操作的执行时长和执行频率。 总会有漏网之鱼的定期删除时从来没有被抽查到惰性删除时也从来没有被点中使用过然后就会导致大量的key堆积在内存中导致redis内存空间紧张或者很快耗尽所以得有缓存淘汰策略。 3、Redis缓存淘汰策略 先看配置文件中的配置在哪 3.1、lru和lfu算法的区别 此时计算机操作系统学的东西要想起来了 LRU 最近最少使用页面置换算法淘汰最长时间未使用的页面看页面最后一次被使用到发生调度的时间长短时间长的就被淘汰了。 LFU 最近最不常用页面置换算法淘汰一定时期内被访问次数最少的页看一定时间段内页面被使用的频率淘汰一定时期内被访问次数最少的页。 举例 某次时期Time为10分钟,如果每分钟进行一次调页,主存块为3,若所需页面走向为2121234假设到页面4时会发生缺页中断 若按LRU算法,应换页面1(1页面最久未被使用)但按LFU算法应换页面3(十分钟内,页面3只使用了一次) 可见LRU关键是看页面最后一次被使用到发生调度的时间长短,而LFU关键是看一定时间段内页面被使用的频率! 看一下操作系统的书 3.2、有哪些缓存淘汰策略 一共8种 noeviction:不会驱逐任何key表示即使内存达到上限也不进行置换所有能引起内存增加的命令都会返回erro。默认的就是这个策略alkeys-lru:对所有key使用LRU算法进行删除优先删除掉最近最不经常使用的key用以保存新数据。volatile-Iru:对所有设置了过期时间的key使用LRU算法进行删除。allkeys-random:对所有key随机删除。volatile-random:对所有设置了过期时间的key随机删除。volatile-ttl:删除马上要过期的key。allkeys-Ifu:对所有key使用LFU算法进行删除。volatile-lfu:对所有设置了过期时间的key使用LFU算法进行删除。 3.3、上面的小结 两个维度四个方面2*48 两个维度 过期键中筛选所有键中筛选 四个方面 LRULFUrandomttl 3.4、平时使用哪一种 在所有的key都是最近最经常使用那么就需要选择allkeys-lru进行置换最近最不经常使用的key,如果你不确定使用哪种策略那么推荐使用allkeys-Iru推荐如果所有的 key的访问概率都是差不多的那么可以选用allkeys-random策略去置换数据如果对数据有足够的了解能够为key 指定hint(命中通过expire/ttl指定那么可以选择volatile-ttl进行置换 redis缓存淘汰策略配置性能建议 避免存储bigkey开启惰性淘汰lazyfree-lazy-evictionyes
http://www.pierceye.com/news/614220/

相关文章:

  • 上海专业的网页设计公司百度推广优化怎么做的
  • 河南城乡建设厅网站wordpress 主题 字体
  • 网站编辑的工作内容深圳网站设计公司有哪些
  • 设计深圳网站制作网站建设及维护招聘
  • 网站开发实训新的体会wordpress防止机器人注册
  • 购买的网站如何换背景自建网站如何被百度收录
  • 国外外贸网站手机销售网站制作
  • 海外永久网站众车网是哪家公司网站
  • 上海 网站开发 兼职布吉建设网站
  • 做网站资金来源是什么wordpress模版sns
  • 聊城wap网站建设如何分析网站竞争对手
  • 卓业网站建设flash 网站 收费
  • 两学一做 答题 网站自己做网站买东西
  • 深圳哪家公司做网站好购物网站开发问题域分析
  • 简单个人网站wordpress插件查询
  • 上海做网站搜索一下马来西亚的网站建设的竞争对手的分析
  • 建站优化易下拉系统163邮箱登录注册
  • c 做网站电子商务平台中搜索词拆解包括
  • 腾讯云10g数字盘做网站够么四川省建设人才网
  • 批量 网站标题中海园林建设有限公司网站
  • 鲜花网站数据库建设免费律师咨询
  • 团队网站建设哪家便宜制作公司网站流程
  • 青龙桥网站建设企业网页是什么
  • 上海网站建设备案号怎么恢复法律咨询网站开发
  • 烟台做网站价格动力网站建设
  • 北戴河网站建设墨刀制作网页教程
  • 成都网站设计开发做得好微信商城怎么开发
  • 江西省城乡建设培训网-官方网站上海建设集团有限公司
  • 凡科网站设计模板grimhelm wordpress
  • 自己做的网站不备案行吗建筑工程集团有限公司