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

怎样如何做网站营销思路

怎样如何做网站,营销思路,上海网站建设推荐秒搜科技,厦门专业网站建设不知从何开始Redis的内存淘汰策略也开始被人问及,卷!真的是太卷了。难不成要我们去阅读Redis源码吗,其实问题的答案,在Redis中的配置文件中全有,不需要你阅读源码、这个东西就是个老八股,估计问这个东西是想…

不知从何开始Redis的内存淘汰策略也开始被人问及,卷!真的是太卷了。难不成要我们去阅读Redis源码吗,其实问题的答案,在Redis中的配置文件中全有,不需要你阅读源码、这个东西就是个老八股,估计问这个东西是想考察你们做的项目体量大不大。一般用 lru 就行。
在这里插入图片描述

内存回收策略

找到redis安装目录,找到redis.conf文件,找到如下代码,即可配置对应的内存回收策略

maxmemory-policy noeviction

至于内存策略有哪几种,文档中也写出来了,但是用洋文写的,下面用国语翻译一下。

在这里插入图片描述

当Redis使用内存超过了配置文件中设置的最大内存、或者大于物理机内存,将会触发内存回收策略

  1. volatile-lru -> remove the key with an expire set using an LRU algorithm(借助 lru 算法移除最近最少使用的过期 key)推荐
  2. allkeys-lru -> remove any key according to the LRU algorithm(移除最近最少使用的key,无论该 key 是否过期)不推荐
  3. volatile-random -> remove a random key with an expire set(从过期 key 中随机移除 key)也可以用用,但是效果没有第2种的好
  4. allkeys-random -> remove a random key, any key(随机移除 key,无论 key 是否过期)
  5. volatile-ttl -> remove the key with the nearest expire time (minor TTL) (删除快过期的 key)不推荐
  6. noeviction -> don’t expire at all, just return an error on write operations(这个是Redis默认的内存回收策略,没内存后写入会报错,建议改成 volatile-lru)

过期删除策略

这玩意我在配置文件中翻了一圈没找到对应的配置,那就肯定是要看redis源码了。我很爱看源码。但是看了下redis安装文件中的src文件,这玩意尼玛好像是用C语言写的,就好像很多人喜欢问 Synchronized 锁升级,但是这玩意的源码需要进行反编译查看,而且不是用 Java写的,叫我们怎么看呢。但是没关系,这些我都总结好了。
Redis用到的过期删除策略:惰性删除、定期删除、定时删除,这些都是前辈们的经验之谈,这玩意怎么来的?就好比Mybatis中用到了哪些设计模式,委派模式是其中的一个,同理 惰性删除、定期删除、定时删除,也是Redis用到的一部分过期删除策略。要想完全搞明白用到的所有过期删除策略,你需要把 src 文件下面所有的 .c 文件全部看一遍。

  • 惰性删除:访问某个key的时候,先检测key是否过期,过期了直接删除,返回null,没过期返回具体值。至于源码文件,在 src 目录下面有个 db.c 文件,里面有个 expireIfNeeded 函数,就 是 Redis 每次对 key 进行操作前都会调用 expireIfNeeded 函数,判断key是否过期,过期了就删除key、没过期就不删;
    在这里插入图片描述
  • 定期删除:每隔一定时间,取出部分key,筛出其中的过期key然后删除。具体源码自行翻阅 src目录中的 .c 文件
  • 定时删除:这个也很好理解,过期key到了过期时间自动删除。具体源码自行翻阅 src目录中的 .c 文件

RDB文件路径配置

修改 redis.conf 中的如下配置即可

# RDB文件名称
dbfilename dump.rdb
# RDB文件存放路径
dir /Users/zhangzixing/Desktop/redis持久化文件

在这里插入图片描述

主动生成RDB文件命令

没怎么用过这些命令,浅浅的记录一下~~~
阻塞Redis所有请求,直至RDB文件生成完成,不建议使用

SAVE

开启子线程,非阻塞生成RDB文件

BGSAVE

本机启动Redis

这个读者可以跳过,我经常忘记我电脑上Redis的安装路径,这里做个记录~

redis-server /usr/local/redis-6.0.10/etc/redis.conf
config set requirepass 123456

Redis 单线程个人理解

由于 Redis 的内存数据库,CPU不会成为Redis性能的瓶颈,内存执行指令速度非常快,是单个线程去执行指令,但是别忘了,Redis 还需要对 RDB、AOF 文件进行 IO 操作,IO 操作是多线程执行的。

到此本文结束,关注不迷路,后续分享更多经验之谈~~~~

http://www.yayakq.cn/news/989789/

相关文章:

  • 毕业设计团购网站建设花店网站建设文案
  • 网站怎么接入百度地图惠州cms建站系统
  • 设计教程网站wordpress评论不审核
  • 平度推广网站建设手机网站菜单网页怎么做
  • 企业网站改版价格电商平台运营
  • 便民类网站 做镇江seo网络推广定制
  • 保险网站建设的总体目标dw做响应式网站
  • 哪个网站做浏览器主页好腾讯企业邮箱怎么申请
  • 安庆网站建设哪家好做网站的技术门槛高吗
  • 风控网站开发网站服务是指
  • 淘宝上做的网站可以优化吗现在还有什么推广渠道
  • 企业网站设计中常见的排版类型如何运营一个网站
  • 做下载网站赚钱三亚网站优化
  • 杭州网站制作建设asp网站开发工程师
  • 威海网站建设兼职WordPress安装进入不了
  • 网站忧化教程打开2345网址大全
  • 电子商务网站建设与安全图书网站建设方案
  • 网站服务器组建济南网站开发公司排名
  • 即墨网站建设招聘在线网站建设联系人
  • 长沙做公司网站大概多少钱网络营销论文题目大全
  • 做明星粉丝网站国内人工智能比较厉害的公司
  • 昆明市住房和城乡建设局网站上看的公司网站代码模板
  • 西安百通网站建设公司福州网站设计哪里比较好
  • 网络优化网站 s福州seo扣费
  • 网站建设 泰安自己建设的网站怎么赚钱
  • 北京网站建设上北京九五至尊网络wordpress 来源
  • owasp 网站开发朔州如何做百度的网站
  • 小米商城网站开发文档阿里云域名怎么做网站
  • wordpress站点名称的影响wordpress qq 注册
  • 怀化市建设局网站接单做网站的