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

360°网站标签旋转显示特效网页设计个人网页制作

360°网站标签旋转显示特效,网页设计个人网页制作,企业网站的建设思维导图,广告联盟没有网站怎么做一、多级缓存架构 在线上系统中#xff0c;一定不会单纯的只部署一个Redis集群#xff0c;而是使用Redis结合其他的多级缓存应用进行架构。 使用多级缓存架构的优点就是可以使不同类型的数据分布在不同的应用中#xff0c;比如redis的热点key可以存储到nginx本地缓存、服务…一、多级缓存架构 在线上系统中一定不会单纯的只部署一个Redis集群而是使用Redis结合其他的多级缓存应用进行架构。 使用多级缓存架构的优点就是可以使不同类型的数据分布在不同的应用中比如redis的热点key可以存储到nginx本地缓存、服务集群的本地缓存进而分散单应用的服务压力。 二、redisObject 所有value对象在内部定义为redisObject结构体。 三、Redis的单线程 redis的单线程不是真的单线程在内部执行命令的时候使用单线程但是其他的操作夜壶开启其他的线程。 1、IO多路复用器 2、文件事件分派器 3、文件事件处理器 4、Redis 6 提供了多线程执行 四、Redis的缓存淘汰机制 当Redis的可用内存占满的时候就会触发内存和磁盘的swap交换导致Redis的性能急剧下降。这是绝对不能允许的为了限制最大内存的使用Redis使用参数maxmemory限制Redis缓存的最大容量。当达到Redis缓存的限制就触发缓存淘汰机制。 修改maxmemory-policy参数可以指定使用哪种缓存淘汰机制。可选项包括 noeviction volatile-lru volatile-ttl volatile-random allkeys-lru allkeys-random volatile-lfu allkeys-lfu 查看当前配置的内存淘汰策略 config get maxmemory-policy 1、noeviction - 默认 不可驱动当内存中的数据量达到配置的内存时为了避免数据丢失不可执行set操作只能执行读操作、删除操作。 2、volatile-lru lru - less read use  没设置过期时间的key不淘汰。 针对设置了过期时间的key执行淘汰。 淘汰的原则是使用次数最少的key优先被淘汰。 3、volatile-ttl 没设置过期时间的key不淘汰。 针对设置了过期时间的key执行淘汰。 淘汰的原则是哪个key剩余的存活时间最短就淘汰哪个key。 4、volatile-random 没设置过期时间的key不淘汰。 针对设置了过期时间的key执行淘汰。 随机淘汰策略。 5、allkeys-lru 针对所有key使用最少的先淘汰。 6、allkeys-random 针对所有key随机淘汰。 7、volatile-lfu 针对有过期时间的key先淘汰访问频次少的key。 8、allkeys-lfu 针对所有key先淘汰访问频次少的key。 五、缓存淘汰相关算法 1、LRU算法 最近使用原则。 通用的LRU算法是维护一个链表将最近访问的key放到链表的头部。这样不经常访问的key就会被挤到链表的尾部当执行淘汰的时候就从链表最尾部开始淘汰。 但是维护这样的链表会造成额外的开销Redis为了保证响应的效率没维护这样的链表而是使用了【近似LRU算法】。 2、近似LRU算法 与LRU算法稍有不同并不是真正维护了一个访问顺序链表而是在每一个key上开辟了一块【24bit】的空间记录着上一次访问的时间戳通过比较时间戳的大小也能实现访问顺序链表的功能。 默认配置下通过每次采样5个key互相比较上次访问的时间戳淘汰最早访问的key。直到内存数据小于maxmemory配置的大小。 采样数量配置参数maxmemory-samples 采样范围根据maxmemory-policy配置的淘汰策略决定。 3、LFU算法 Redis 4.0 版本之后新增了LFU算法采样成功后再根据key最近被访问的频次决定淘汰哪些key访问频次越少的先被淘汰。而不是单纯根据最近访问时间做判断。 为什么要这么做呢场景一当redis初始化的时候所有的key基本都在同一时间加载且越重要的越早加载这时候不能盲目地根据最后访问时间决定淘汰哪些缓存。 那么是如何实现记录访问频次的呢在key上的【24bit】空间的基础上分成了【16bit】【8bit】的空间大的记录着最后访问时间戳精度下降小的记录着访问次数。 4、缓存时间戳 Redis在内存中缓存了一个时间戳并不是用的时候从操作系统中获取当前时间戳而是执行了一个定时任务每1ms执行一次从操作系统获取时间戳更新到Redis缓存中用的时候直接从缓存中拿。 在redis中执行一条命令大约需要 100ns所以每1ms是一个相对较大的时间单位。而每一次从操作系统获取时间戳时上下文切换的时间消耗大约是 10us所以redis选择了 “间隔一大段时间才做一次时间戳更新” 。 六、Redis的过期策略 1、过期key的集合 在Redis中设置了过期时间ttl的key会被放入一个过期key的字典从这个过期key的字典实现定期删除。 2、定时扫描策略 Redis创建了一个定时任务每1s执行10次。 每次从过期字典中随机采集20个key删除其中过期的数据。 如果发现达到 1/4 的key是过期的就再采集20个key删除过期数据循环往复。 是一个贪心算法。 3、惰性删除 为了弥补定时扫描删除可能出现的“漏网之鱼”当get一个key的时候发现已经过期了就不会返回value数据同时也删除这个key。 4、从库的过期策略 没有定期扫描、惰性删除等功能。只是从主库的AOF文件中读取del命令来删除数据。 5、lazyFree 在删除数据或内存淘汰时删除String数据基本会很快但是在删除大的listsethash等数据时有可能会很慢造成阻塞。 为了缩短阻塞时间Redis会将大体量的数据删除操作放到后台去做。 ① 工作原理 Redis主线程进仅对key做个逻辑删除标识某个key需要启用异步删除。lazyFree拿到这个key后启动一个异步线程对这个key做物理删除。从而避免主线程阻塞。 ② 配置参数 参数作用replica-lazy-flush集群启动 lazyFree 删除数据slave-lazy-flush从节点启用 lazyFree 删除数据lazyfree-lazy-user-flush用户输入 flush 命令删除lazyfree-lazy-user-del用户输入 del 命令删除lazyfree-lazy-server-del 针对有些指令在处理已存在的键时会带有一个隐式的DEL键的操作。 如rename命令当目标键已存在Redis会先删除目标键 lazyfree-lazy-eviction内存达到 maxmemory 的时候触发缓存淘汰lazyfree-lazy-expire针对 key 过期的删除
http://www.hkea.cn/news/14587379/

相关文章:

  • 怎么建设微网站八戒商标注册网
  • 做音乐网站用什么程序西安直播室网站建设
  • 沛县做网站263企业邮箱登录登录
  • 网站关键词被改做淘宝客为什么要建网站
  • 设计方案英文东莞网站优化哪里找
  • 企业网站建设管理制度美橙网站建设教程
  • php精品网站建设最新热搜新闻
  • 南京鼓楼做网站的公司升学宴ppt免费模板下载
  • 自己搭建网站dedecms 网站安全
  • 采购网站官网制作企业网站价格
  • 东莞专业网站建设网站建设资料清单
  • 个人网站素材下载12306网站很难做吗
  • 网站ftp上传到空间做個app网站价格
  • 网站域名和网址网络架构 书籍
  • 免费建自己的网站赚钱周口在线网站建设
  • 关键词百度指数查询长沙优化排名推广
  • 西安 网站建设 费用网站建设实现后台数据导出excel
  • 万家建设有限公司网站重庆南岸营销型网站建设公司哪家好
  • 网站怎么放404页面网站建设搜索
  • 凡科网站建设7个基本流程腾讯域名怎么建设网站
  • 湘潭做网站 i磐石网络关于网站建设的可行性报告
  • 网站建设的建议例子网易企业邮箱手机上登录不了
  • 定制企业网站建设哪家好网店美工课程总结
  • 免费开源网站建设系统动物网站建设
  • 网站增长期怎么做店铺网络推广方案
  • 好的网站建设公司有哪些wordpress找不到后台
  • 怎样创建网站dw如何做网络营销推广就属金手指饣
  • 刚做的网站适合做外链吗深圳公司网络推广该怎么做
  • 自己做网站还有出路吗企业网站怎么扣费的
  • 检测网站是否安全广州越秀区酒店推荐