redis介绍以及redis中数据的过期时间

您所在的位置:网站首页 cad自动保存时间多久有效 redis介绍以及redis中数据的过期时间

redis介绍以及redis中数据的过期时间

2024-07-16 19:48:38| 来源: 网络整理| 查看: 265

1.Redis数据库介绍

       redis数据库是一种基于内存可持久化的键值对非关系性数据库。为了保证效率,redis的数据都是缓存在内存中的,区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

       Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。

       Redis是基于内存管理的数据库,所以内存开销方面需要进一步优化:

       ①.首先最重要的一点是不要开启Redis的VM选项,即虚拟内存功能,这个本来是作为Redis存储超出物理内存数据的一种数据在内存与磁盘换入换出的一个持久化策略,但是其内存管理成本也非常的高,并且我们后续会分析此种持久化策略并不成熟,所以要关闭VM功能,请检查你的redis.conf文件中 vm-enabled 为 no。   ②.其次最好设置下redis.conf中的maxmemory选项,该选项是告诉Redis当使用了多少物理内存后就开始拒绝后续的写入请求,该参数能很好的保护好你的Redis不会因为使用了过多的物理内存而导致swap,最终严重影响性能甚至崩溃。

       ③.如果在Redis内部存储的大部分数据是数值型的话,Redis内部采用了一个shared integer的方式来省去分配内存的开销,即在系统启动时先分配一个从1~n 那么多个数值对象放在一个池子中,如果存储的数据恰好是这个数值范围内的数据,则直接从池子里取出该对象,并且通过引用计数的方式来共享,这样在系统存储了大量数值下,也能一定程度上节省内存并且提高性能

2.redis数据存储位置

我们知道redis是基于内存存储数据的,那么数据在掉电后会造成数据丢失,我们可以亦通过配置生成相关的日志文档以及将数据在磁盘进行备份。这样下次开机是可以保证数据仍然可以拿到。

3.redis数据库常用数据类型已经相关操作

过期时间设置常用操作:

EXPIRE 将key的生存时间设置为ttl秒PEXPIRE 将key的生成时间设置为ttl毫秒EXPIREAT 将key的过期时间设置为timestamp所代表的的秒数的时间戳PEXPIREAT 将key的过期时间设置为timestamp所代表的的毫秒数的时间戳

其实以上几种处理方式都是根据PEXPIREAT来实现的,设置生存时间的时候是redis内部计算好时间之后在内存处理的,最终的处理都会转向PEXPIREAT。 1、2两种方式是设置一个过期的时间段,就是咱们处理验证码最常用的策略,设置三分钟或五分钟后失效,把分钟数转换成秒或毫秒存储到redis中。  3、4两种方式是指定一个过期的时间 ,比如优惠券的过期时间是某年某月某日,只是单位不一样。

键命令(支持正则查找): keys 参数 keys *: 查看所有键 keys 'a*': 查看名称包含a的键(正则查找) exists key:查看键是否存在,存在返回1 type key:查看键的类型 del key1 key2 : 删除键以及对应的值 expire key seconds :设置过期时间 ttl key:查看键的有效时间(返回-2代表对应的键已经过期,返回-1代表键没有设置过期超时)

 

string类型数据的操作 1.set key value 2.设置过期时间: setex key seconds value(eg: setex name 3 fenghua) 3.mset key1 value1 key2 value2 4.给键追加值 append key value 5.获取数据 get key mget key1 key2 hash类型(key 代表对象,field代表属性) 保证key,value有效期的一致 1.hset key field value(设置key的属性为XX) 2.hmset key field1 value1 field2 value2 3.hkeys key(获取键的所有属性) 4.hget key field(eg:hget key field) 5.hget key field1 field2 field3 6.hvals key (获取某个键所有属性的值) 7.hdel key field1 field2(删除) list类型(key代表列表名) 1.lpush key value1 value2... 2.lrange key 0 3 (0 3 代表下标,负数代表从尾部计数) 3.linsert key before/after 现有元素 新元素 4.lset key 下标 value (修改值) 右边类似 5.lrem key count value(count=0 代表移除所有,count


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭