
数据库--redis高级
文章平均质量分 64
yjc0403
这个作者很懒,什么都没留下…
展开
-
redis表设计
我们怎么将关系型数据库转移到kv数据库中,下面是表设计 关系型数据库的设计 mysql> select * from login; +---------+----------------+-------------+---------------------+ | user_id | name | login_times | last_...原创 2015-09-17 16:50:09 · 2515 阅读 · 0 评论 -
redis分区
redis分区 分区的好处1. 通过利用多台计算机内存的和值,允许我们构造更大的数据库。2. 通过多核和多台计算机,允许我们扩展计算能力;通过多台计算机和网络适配器,允许我们扩展网络带宽。 分区的缺点1. 涉及多个key的操作通常是不被支持的。举例来说,当两个set映射到不同的redis实例上时,你就不能对这两个set执行交集操作。2. 涉及多个key的r...原创 2016-12-13 10:15:28 · 116 阅读 · 0 评论 -
Spring结合redis
Spring结合redis 核心部分1. jedis,java操作redis的client类2. spring-data-redis,提供下面的jedisConnectionFactory2. jedisConnectionFactory,用于链接redis,配置连接redis的参数 pom.xml<project xmlns="http://mave...原创 2016-12-11 16:20:53 · 94 阅读 · 0 评论 -
Redis应用场景
Redis应用场景 发布与订阅在更新中保持用户对数据的映射是系统中的一个普遍任务。Redis的pub/sub功能使用了SUBSCRIBE、UNSUBSCRIBE和PUBLISH命令,让这个变得更加容易。// 订阅频道数据 public static void testSubscribe() { //连接Redis数据库 Jedis jedis ...原创 2016-12-11 15:59:02 · 236 阅读 · 0 评论 -
Redis优化
Redis优化 精简键名和键值键名:尽量精简,但是也不能单纯为了节约空间而使用不易理解的键名。键值:对于键值的数量固定的话可以使用0和1这样的数字来表示,(例如:male/female、right/wrong) 是否需要持久化当业务场景不需要数据持久化时,关闭所有的持久化方式可以获得最佳的性能,不过一般都要持久化比较安全,而且是快照和aof同时使用比较安全...原创 2016-12-08 17:49:01 · 106 阅读 · 0 评论 -
Redis高级特性
Redis高级特性 redis中键的生存时间(expire)Redis中可以使用expire命令设置一个键的生存时间,到时间后redis会自动删除它。1. 过期时间可以设置为秒或者毫秒精度。2. 过期时间分辨率总是 1 毫秒。3. 过期信息被复制和持久化到磁盘,当 Redis 停止时时间仍然在计算 (也就是说 Redis 保存了过期时间)。 命令expire...原创 2016-12-08 11:26:42 · 229 阅读 · 0 评论 -
Redis的config命令
Redis的config命令 config set:动态修改参数,重启后失效config set appendonly yes config set save "90 1 30 10 60 100" config get:可以查看所有可以使用config set命令设置的参数config get * config rewrite:将动态命...原创 2016-12-08 10:58:00 · 862 阅读 · 0 评论 -
Redis集群
Redis集群 简介redis集群是一个无中心的分布式Redis存储架构,可以在多个节点之间进行数据共享,解决了Redis高可用、可扩展等问题。 Redis集群的特点1、将数据自动切分(split)到多个节点2、当集群中的某一个节点故障时,redis还可以继续处理客户端的请求。 集群中的主从复制集群中的每个节点都有1个至N个复制品,其中一个为...原创 2016-12-06 23:20:55 · 139 阅读 · 0 评论 -
Redis订阅发布
Redis订阅发布 理解就类似于观察者模式,一旦观察主题发生变化,所有观察者都应该收到消息 普通订阅SUBSCRIBE channel [channel ...]:订阅给定的一个或多个频道的信息。 发布PUBLISH channel message:将信息 message 发送到指定的频道 channel 。 模式订阅PSUBSC...原创 2016-12-06 15:51:25 · 116 阅读 · 0 评论 -
Redis慢查询日志
Redis慢查询日志 前提一个线程将一个txt中140M的数据插入到redis的hashset中,同时我开另一个线程1秒钟一次的从string中获取数据,同时记录下获取时间,如果获取string的时间间隔太大,说明阻塞产生了。 读取string的线程被Hashset阻塞了6s之多,很恐怖,这个就属于典型的慢查询,它的慢果然阻塞了其他client 原因redi...原创 2016-12-06 15:00:41 · 250 阅读 · 0 评论 -
Redis事务机制
Redis事务机制 描述事务是指“一个完整的动作,要么全部执行,要么什么也没有做”。在聊redis事务处理之前,要先和大家介绍四个redis指令,即MULTI、EXEC、DISCARD、WATCH。这四个指令构成了redis事务处理的基础。 1. MULTI用来组装一个事务;2. EXEC用来执行一个事务;3. DISCARD用来取消一个事务;4. WATC...原创 2016-12-06 12:03:26 · 174 阅读 · 0 评论 -
Redis集群 -- sentinel
Redis集群 -- sentinel sentinel功能redis的sentinel系统用于管理多个redis服务器,该系统主要执行三个任务:监控、提醒、自动故障转移。 1、监控(Monitoring): Redis Sentinel实时监控主服务器和从服务器运行状态,并且实现自动切换。 2、提醒(Notification):当被监控的某个 Redis 服务器出...原创 2016-12-05 23:46:54 · 115 阅读 · 0 评论 -
Redis集群 -- 主从
Redis主从 特点 1. 主从结构,一是为了纯粹的冗余备份,二是为了提升读性能,比如很消耗性能的sort,就可以由从数据库来承担 2. 主从同步是异步进行的,这意味着主从同步不影响主逻辑,也不会降低redis的性能 3. 主从架构中,可以关闭主服务器的数据持久化功能,只让从服务器做持久化,这样提高主服务器的处理性能 ...原创 2016-12-05 15:50:44 · 109 阅读 · 0 评论 -
Redis的AOF重写机制
Redis的AOF重写机制 1. 重写AOF的时候,创建一个重写子进程,然后读取旧的AOF文件,压缩并写入到一个临时AOF。2. 在此期间,主进程一边将接收到的指令累计到一个缓冲区中,一边将指令写入到旧的AOF。(这样的好处,保证AOF文件的可用性,避免写过程时出意外)3. 子进程写完后,向主进程发送一个信号量,主进程就将缓冲区中的指令追加到新AOF。4. 用新的AOF替...原创 2016-12-05 12:34:22 · 678 阅读 · 0 评论 -
redis持久化
redis持久化 redis持久化只要分为1. RDB,定期将数据持久化到rdb文件2. AOF,每次数据变化都写入到aof文件中 RDB持久化 这是redis默认的持久化策略,每隔一段时间就会将数据写入到dump.rdb文件中。 原理redis会定期fork一个子进程,然后子进程将数据写到一个临时rdb文件,当子进程写完临时文件,就替...原创 2016-12-05 00:49:29 · 83 阅读 · 0 评论 -
redis数据淘汰机制
redis数据淘汰机制 概述在 Redis 中,允许用户设置最大使用内存大小 server.maxmemory,在内存限定的情况下是很有用的。譬如,在一台 8G 机子上部署了 4 个 Redis 服务点,每一个服务点分配 1G 的内存大小,减少内存紧张的情况,由此获取更为稳健的服务。Redis 内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略。 ...原创 2016-12-04 16:12:20 · 306 阅读 · 0 评论 -
Redis管道机制(pipeline)
Redis管道机制(pipeline) Redis的管道机制,其实是为了批量读写而设计的,如果进行多次的读和写数据到redis,每次都建立一个链接,这样是比较消耗资源的,而且也比较忙,于是想到了管道机制(pipeline),只建立一个连接,然后批量执行读或写。 插入数据效果 非管道: 数据量 = 2W, 执行时间 = 1分多钟 ...原创 2017-08-11 11:23:48 · 1541 阅读 · 0 评论