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

网站访问量js谷歌网站 百度

网站访问量js,谷歌网站 百度,小夜仿115资源网源码,江阴百度推广公司目录 SET GET KEYS EXISTS DEL EXPIRE TTL redis中的过期策略是怎么实现的#xff08;面试#xff09; 上文介绍reids的安装以及基本概念#xff0c;本章节主要介绍 Redis的基本使用命令的使用 Redis 是一个基于键值对#xff08;KEY - VALUE#xff09;存储的…目录 SET GET KEYS  EXISTS  DEL EXPIRE  TTL  redis中的过期策略是怎么实现的面试 上文介绍reids的安装以及基本概念本章节主要介绍 Redis的基本使用命令的使用 Redis 是一个基于键值对KEY - VALUE存储的高性能数据库。在这种存储模式下数据以键KEY和值VALUE的形式进行组织和存储。 KEY 是唯一的  只对应 String类型值VALUE支持多种数据类型StringSetHashListSorted Set..... redis中命令不区分大小写 进入redis中 redis-cli rootiZbp122ygczhdyhc5r271kZ:~# redis-cli 127.0.0.1:6379 127.0.0.1:6379 127.0.0.1:6379 127.0.0.1:6379 127.0.0.1:6379 127.0.0.1:6379 SET SET命令用于在 Redis 中设置一个键值对。基本语法是SET key value [ 1set方法 127.0.0.1:6379 set key1 value1 OK 127.0.0.1:6379 set key2 value2 OK 127.0.0.1:6379 set key3 value3 OK2过期时间设置EX 和 PX  EX用于设置键值对的过期时间单位是秒。 127.0.0.1:6379 set key4 value4 ex 20 OK 127.0.0.1:6379 ttl key4 (integer) 15ttl查询剩余多少秒 PX则是用于设置过期时间单位是毫秒  127.0.0.1:6379 set key5 value5 px 5000 OK 127.0.0.1:6379 ttl key5 (integer) 23条件设置NX 和 XX NXNot eXists表示只有当键不存在时才设置键值对  127.0.0.1:6379 keys * 1) key3 2) key2 3) key1 127.0.0.1:6379 set key4 value4 nx OK 127.0.0.1:6379 get key4 1) value4XXeXists与NX相反只有当键已经存在时才设置键值对。  GET GET命令用于获取指定键key对应的的值value。如果键不存在GET命令会返回nil。 127.0.0.1:6379 get key1 value1 127.0.0.1:6379 get key2 value2 127.0.0.1:6379 get key3 value3 127.0.0.1:6379 get key4 (nil)如果存在根据key值 返回对应的value  否则将返回一个空nil KEYS  在 Redis 中keys命令是一个用于查找符合特定模式pattern的键keys的命令。它返回所有与给定模式匹配的键的列表。 通配符介绍 *可以匹配任意数量包括零个的字符。例如keys *会返回所有的键因为它匹配任何键名。而keys user:*会返回所有以user:开头的键像user:1、user:abc等都符合这个模式。?匹配一个任意的字符。例如keys user:??会匹配像user:12、user:ab这样长度为固定 4 个字符user:加上后面两个任意字符的键因为?只匹配一个字符。   先设置好一些值以便演示  127.0.0.1:6379 set heool 1 OK 127.0.0.1:6379 set hello 2 OK 127.0.0.1:6379 set hllow 3 OK 127.0.0.1:6379 set hallo 4 OK 127.0.0.1:6379 set hhhhhh 5 OK 127.0.0.1:6379 set heool 6 OK1匹配一个字符  127.0.0.1:6379 keys h?llo 1) hallo 2) hello2* 匹配0个或多个字符  127.0.0.1:6379 keys h* 1) hallo 2) heool 3) hello 4) hhhhhh 5) hllow3【abcde】只能匹配abcde别的不行 相当与固定选项 127.0.0.1:6379 keys h[ab]llo 1) hallo4【^e】 只有e匹配不了 其他都可以匹配 127.0.0.1:6379 keys h[^e]* 1) hallo 2) hhhhhh 3) hllow5【a-b】可以匹配a-b区间的字符 包括俩侧 127.0.0.1:6379 keys h[a-e]llo 1) hallo 2) hello注意 KEYS * 慎用 因为为把所有的结果显示出来有可能会使系统崩溃导致所有的数据丢失 keys的时间复杂度O(N)  EXISTS  在 Redis 中exists命令用于检查给定的一个或多个键keys是否存在。它返回一个整数值表示给定键存在的数量。 语法为exists key [key...]。 127.0.0.1:6379 keys * 1) hallo 2) heool 3) hello 4) hhhhhh 5) hllow 127.0.0.1:6379 exists hallo (integer) 1 127.0.0.1:6379 exists hallo heool hello (integer) 3 127.0.0.1:6379 exists a (integer) 0如果存在则返回1不存在返回0。如果同时检查多个键它会返回存在的键的数量。 时间复杂度O(1) DEL del命令是 Redis 中用于删除一个或多个键keys及其对应的值values的命令。其语法是del key [key...]。 127.0.0.1:6379 keys * 1) hallo 2) heool 3) hello 4) hhhhhh 5) hllow 127.0.0.1:6379 del hallo (integer) 1 127.0.0.1:6379 del heool dello (integer) 1 127.0.0.1:6379 del hhhhhh hllow (integer) 2 127.0.0.1:6379 del a (integer) 0如果键不存在del命令会返回0表示没有键被删除如果键存在并成功删除会返回1如果同时删除多个键返回成功删除的键的数量。  时间复杂度O(1) EXPIRE  在 Redis 中expire命令用于为一个已经存在的键key设置过期时间。语法为expire key seconds其中key是要设置过期时间的键seconds是过期时间的秒数。 127.0.0.1:6379 keys * 1) key3 2) hello 3) key2 4) key1 127.0.0.1:6379 expire key1 10 (integer) 1 127.0.0.1:6379 ttl key1 (integer) 6 127.0.0.1:6379 get key1 (nil)一旦过期时间到达Redis 会自动删除这个键值对。 时间复杂度O(1) TTL  在 Redis 中ttlTime To Live命令用于获取一个键key的剩余生存时间以秒为单位。语法是ttl key。 127.0.0.1:6379 keys * 1) key3 2) hello 127.0.0.1:6379 expire hello 10 (integer) 1 127.0.0.1:6379 ttl hello (integer) 6 127.0.0.1:6379 ttl hello (integer) -2 127.0.0.1:6379 ttl key3 (integer) -1 127.0.0.1:6379 get hello (nil) 例如对于一个已经设置了过期时间的键执行命令会返回该键剩余的生存时间秒数。如果键不存在或者没有设置过期时间ttl命令返回-1如果键已经过期ttl命令返回-2。 redis中的过期策略是怎么实现的面试 惰性删除Lazy Deletion 当客户端访问一个键时Redis 会检查这个键是否已经过期。如果键已经过期那么在执行相应的操作如GET、SET等之前Redis 会先删除这个过期的键然后返回键不存在的结果如nil。例如当执行GET key操作时Redis 内部会有一个检查机制先判断键是否过期。如果key已经过期Redis 会执行删除操作然后返回nil就好像这个键从来不存在一样。  定期删除 Redis 会定期从设置了过期时间的键中随机抽取一部分键进行检查将其中过期的键删除。这个检查过程是在 Redis 的内部循环事件Event Loop中进行的有一定的时间间隔和检查数量限制。具体来说Redis 会使用一个近似的 LRULeast Recently Used算法来确定要检查的键。它会维护一个过期键的样本池每次从这个样本池中抽取一定比例的键进行检查。例如可能会每次抽取 100 个键进行检查发现过期的键就立即删除。 Redis 过期策略的综合应用 在实际的 Redis 应用中惰性删除和定期删除是结合使用的。这种综合策略的目的是在保证内存使用效率的同时尽量减少对系统性能的影响。例如对于一个高流量的缓存系统大部分时间依靠惰性删除来处理过期键因为缓存数据通常是频繁访问的过期键在被访问时能够及时被删除。同时定期删除机制会在后台默默地工作定期清理那些长时间未被访问的过期键以防止内存占用过多。通过这种方式Redis 能够在高效利用内存和提供高性能服务之间取得平衡。 结语 写博客不仅仅是为了分享学习经历同时这也有利于我巩固知识点总结该知识点由于作者水平有限对文章有任何问题的还请指出接受大家的批评让我改进。同时也希望读者们不吝啬你们的点赞收藏关注你们的鼓励是我创作的最大动力
http://www.hkea.cn/news/14488286/

相关文章:

  • org域名做商业网站这几年做啥网站致富
  • 手机上怎么做网站电商app制作开发
  • 做门户网站需要注册公司吗网页制作公司有哪些职位
  • 网站租用服务器价格网站建设策划方案ppt
  • 西安做网站朋朋计算机网络技术毕业设计
  • 优秀网站菜单网站内做营销活动使用工具
  • 辽宁住房建设厅网站阳泉做网站
  • 广州建设厅电工网站网站制作教程书籍
  • 长春网页网站制作东莞工厂网站建设
  • 手机怎样用网站做成软件医院网站开发公司
  • 公司网站建设需要哪些设备wordpress相册短代码
  • 广州网站开发外包成都房地产信息网官网
  • 学校网站建设宗旨基础的网站建设
  • 一站式网站开发唯美谷网站建设
  • 四川省微信网站建设怎么在各大网站做推广
  • 偃师网站建设建个人网站赚钱吗
  • 网站模型怎么做创作图片的软件
  • 电子商务网站的特点台州哪家做企业网站比较好
  • 网站后期维护合同网站布局策划的流程
  • 网站管理系统软件深圳公司标牌制作
  • wordpress房屋网站模板营销策划
  • 鲅鱼圈做网站做鲜花的网站有哪些
  • 全屏展示网站图片如何做自适应网站制作公司广州
  • 郑州做网站设计的公司免费网站服务
  • 做音乐网站赚钱吗购物网站排名2017
  • 酷虎云建站wordpress标签小工具栏
  • aspx 网站开发工具wordpress网上在线插件
  • 建一个英文网站需要多少钱网站设置支付宝在线支付
  • 网页设计美工培训班资源网站优化排名软件公司
  • 空气过滤棉上海网站建设大数据营销模型