Keyspace

redis配置详解

你。 提交于 2020-03-25 08:35:27
3 月,跳不动了?>>> ##redis配置详解 # Redis configuration file example. # # Note that in order to read the configuration file, Redis must be # started with the file path as first argument: # # ./redis-server /path/to/redis.conf # Note on units: when memory size is needed, it is possible to specify # it in the usual form of 1k 5GB 4M and so forth: # # 1k => 1000 bytes # 1kb => 1024 bytes # 1m => 1000000 bytes # 1mb => 1024*1024 bytes # 1g => 1000000000 bytes # 1gb => 1024*1024*1024 bytes # # units are case insensitive so 1GB 1Gb 1gB are all the same. ################################## INCLUDES ###########

Cassandra 最佳实践系列(1)

可紊 提交于 2020-03-25 07:16:29
3 月,跳不动了?>>> Cassandra最佳实践细节(1)常见CQL使用(1) 数据类型 CQL_TYPE包含如下几类: native type; collection type; user defined type; tuple type; Custom type; native type 类型 变量可用类型 描述 ascii string ASCII 字符串 bigint integer 64位有符号long blob blob 任意字节 boolean boolean true、false counter integer counter 列(64位有符号) date integer、string 日期常量类型 decimal integer、float 可变精度小数 double integer、float 64位IEEE-754浮点 duration duratio 纳秒精确度的持续时间 float integer、float 32位IEEE-754浮点 inet string IP地址、ipv4或者ipv6,因为没有ip类型,所以用string作为输入 int integer 32位 有符号int smallint integer 16位有符号int text string UTF-8编码string time integer、string 纳秒精度的时间

Java中 Redis到期事件通知(key过期,触发事件)

穿精又带淫゛_ 提交于 2019-12-05 07:01:16
1. 在redis.conf 中修改 notify-keyspace-events Ex 这一行的注释打开 2. import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.listener.RedisMessageListenerContainer; @Configuration public class RedisListenerConfig { @Bean RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory) { RedisMessageListenerContainer container = new RedisMessageListenerContainer(); container.setConnectionFactory(connectionFactory); /

便宜有便宜的办法-小微企业云上的springboot集群方案2.1:redis的消息订阅和session过期机制

这一生的挚爱 提交于 2019-12-01 19:00:28
1、session在redis里面的存储结构2 在 上一章 讲spring session存储到redis的时候,在redis里面看到每一个session存储都会生成三条记录,记录格式如下: 这就很麻烦了,为啥不能一一对应,做彼此的天使呢,搞的一对三,很影响风化啊。到底是道德的沦丧还是人性的扭曲,让我们走进redis,看下具体的数据内容: 第一个k-v存储这个Session的id,是一个Set类型的Redis数据结构。这个key中的最后的1570550340000值是一个时间戳,根据这个Session过期时刻滚动至下一分钟而计算得出。里面的值是这样的 第二个k-v用来表示Session在Redis中的过期,是个String类型,这个k-v不存储任何有用数据,只是表示Session过期而设置。这个key在Redis中的过期时间即为Session的过期时间间隔 第三个k-v用来存储Session的详细信息,是hash类型,包括Session的创建时间、过期时间间隔、最近的访问时间、attributes等等。这个k的过期时间为Session的最大过期时间 + 5分钟。如果默认的最大过期时间为30分钟,则这个k的过期时间为35分钟 说到这里,会有个灵魂的拷问,就一个session的存储,为啥要搞三条记录?这里要提一下HttpSession的接口规范了。 session虽然也是一条数据

redis 持久化

北城以北 提交于 2019-11-30 18:39:01
介绍 首先,我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复。 Redis是一个内存数据库,无论是RDB还是AOF,都只是其保证数据恢复的措施。 所以Redis在利用RDB和AOF进行恢复的时候,都会读取RDB或AOF文件,重新加载到内存中。 Redis持久化的方式 RDB AOF RDB RDB就是Snapshot快照存储,是默认的持久化方式。 可理解为半持久化模式,即按照一定的策略周期性的将数据保存到磁盘。 对应产生的数据文件为dump.rdb,通过配置文件中的save参数来定义快照的周期。 下面是默认的快照设置: save 900 1 #当有一条Keys数据被改变时,900秒刷新到Disk一次 save 300 10 #当有10条Keys数据被改变时,300秒刷新到Disk一次 save 60 10000#当有10000条Keys数据被改变时,60秒刷新到Disk一次 Redis的RDB文件不会坏掉,因为其写操作是在一个新进程中进行的。 当生成一个新的RDB文件时,Redis生成的子进程会先将数据写到一个临时文件中,然后通过原子性rename系统调用将临时文件重命名为RDB文件。 这样在任何时候出现故障,Redis的RDB文件都总是可用的。 同时,Redis的RDB文件也是Redis主从同步内部实现中的一环。 第一次Slave向Master同步的实现是: *

redis 持久化

陌路散爱 提交于 2019-11-30 17:58:53
介绍 首先,我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复。 Redis是一个内存数据库,无论是RDB还是AOF,都只是其保证数据恢复的措施。 所以Redis在利用RDB和AOF进行恢复的时候,都会读取RDB或AOF文件,重新加载到内存中。 Redis持久化的方式 RDB AOF RDB RDB就是Snapshot快照存储,是默认的持久化方式。 可理解为半持久化模式,即按照一定的策略周期性的将数据保存到磁盘。 对应产生的数据文件为dump.rdb,通过配置文件中的save参数来定义快照的周期。 下面是默认的快照设置: save 900 1 #当有一条Keys数据被改变时,900秒刷新到Disk一次 save 300 10 #当有10条Keys数据被改变时,300秒刷新到Disk一次 save 60 10000#当有10000条Keys数据被改变时,60秒刷新到Disk一次 Redis的RDB文件不会坏掉,因为其写操作是在一个新进程中进行的。 当生成一个新的RDB文件时,Redis生成的子进程会先将数据写到一个临时文件中,然后通过原子性rename系统调用将临时文件重命名为RDB文件。 这样在任何时候出现故障,Redis的RDB文件都总是可用的。 同时,Redis的RDB文件也是Redis主从同步内部实现中的一环。 第一次Slave向Master同步的实现是: *

华为云学院带你7天入门Redis(2)

房东的猫 提交于 2019-11-30 04:05:47
华为云学院带你 7天入门Redis(2) 1、深度剖析memory Info是Redis提供的一个非常有用的查看状态信息的命令。使用 redis-cli 连上 Redis,输入 info all 命令,redis-server 就 会返回 Redis 的状态信息,详细内容如下: 其中 memory、stats、clients、keyspace 是 Redis 运行时经常要关注的信息,接下来我们重点对这四项进行解读。 对于 Redis 来说,内存是最重要的资源,所以本文首先介绍 Redis 内存状态信息怎么查看, 也就是 memory 这一项: used_memory:Redis 分配器分配的内存量,也就是实际存储数据的内存总量 used_memory_human:以可读格式显示 used_memory used_memory_rss:以操作系统的角度,显示 Redis 进程占用的总物理内存 used_memory_rss_human:以可读格式显示 used_memory_rss mem_fragmentation_ratio:used_memory_rss /used_memory 比值,表示内存碎片率 used_memory 反映了当前 Redis 存储数据的内存使用情况,当内存使用率达到Redis 设置的 maxmemory 时,Redis 就会根据设置内存数据逐出策略

便宜有便宜的办法-小微企业云上的springboot集群方案2.1:redis的消息订阅和session过期机制

妖精的绣舞 提交于 2019-11-29 09:04:31
1、session在redis里面的存储结构2 在 上一章 讲spring session存储到redis的时候,在redis里面看到每一个session存储都会生成三条记录,记录格式如下: 这就很麻烦了,为啥不能一一对应,做彼此的天使呢,搞的一对三,很影响风化啊。到底是道德的沦丧还是人性的扭曲,让我们走进redis,看下具体的数据内容: 第一个k-v存储这个Session的id,是一个Set类型的Redis数据结构。这个key中的最后的1570550340000值是一个时间戳,根据这个Session过期时刻滚动至下一分钟而计算得出。里面的值是这样的 第二个k-v用来表示Session在Redis中的过期,是个String类型,这个k-v不存储任何有用数据,只是表示Session过期而设置。这个key在Redis中的过期时间即为Session的过期时间间隔 第三个k-v用来存储Session的详细信息,是hash类型,包括Session的创建时间、过期时间间隔、最近的访问时间、attributes等等。这个k的过期时间为Session的最大过期时间 + 5分钟。如果默认的最大过期时间为30分钟,则这个k的过期时间为35分钟 说到这里,会有个灵魂的拷问,就一个session的存储,为啥要搞三条记录?这里要提一下HttpSession的接口规范了。 session虽然也是一条数据

Redis运行时的10大重要指标

╄→尐↘猪︶ㄣ 提交于 2019-11-28 16:22:28
Redis运行时的10大重要指标 存活情况 所有指标中最重要的当然是检查redis是否还活着,可以通过命令PING的响应是否是PONG来判断。 连接数 连接的客户端数量,可通过命令src/redis-cli info Clients | grep connected_clients得到,这个值跟使用redis的服务的连接池配置关系比较大,所以在监控这个字段的值时需要注意。另外这个值也不能太大,建议不要超过5000,如果太大可能是redis处理太慢,那么需要排除问题找出原因。 另外还有一个拒绝连接数(rejected_connections)也需要关注,这个值理想状态是0。如果大于0,说明创建的连接数超过了maxclients,需要排查原因。是redis连接池配置不合理还是连接这个redis实例的服务过多等。 阻塞客户端数量 blocked_clients,一般是执行了list数据类型的BLPOP或者BRPOP命令引起的,可通过命令src/redis-cli info Clients | grep blocked_clients得到,很明显,这个值最好应该为0。 使用内存峰值 监控redis使用内存的峰值,我们都知道Redis可以通过命令config set maxmemory 10737418240设置允许使用的最大内存(强烈建议不要超过20G)