Redis
ONROAD0612
不问前程何如,但愿落幕无悔
展开
-
Redis突然变慢问题排查总结(转载自微信公众号)
Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右。但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头雾水。很多时候,Redis出现访问延迟变大,都与我们的使用不当或运维不合理导致的。这篇文章我们就来分析一下Redis在使用过程中,经常会遇到的延迟问题以及如何定位和分析。使用复杂度高的命令如果在使用Redis时,发现访问延迟突然增大,如何进行排查?首先,第一步,建议你去查看一下Redis的慢转载 2020-09-14 18:14:41 · 498 阅读 · 0 评论 -
Redis--开发设计规范及案列分析
redis不是垃圾桶也不是 SUPER MAN,能力和资源都有限,不合理的使用会降低它的健康度,严重时甚至会引起redis抖动、阻塞等进而导致服务不可用,每一个使用redis的开发人员都应当掌握规范的开发和使用方法。本文整理出redis开发过程中七个较常出现的使用不合理的场景,并辅以案例进行分析说明。01合理使用集合类案例某活动需求,每天10点对昨天参加某活动的用户进行推送提醒。开发人员使用red...转载 2018-07-12 09:46:48 · 368 阅读 · 0 评论 -
Redis持久化
前言在上一篇文章中,介绍了Redis的内存模型,从这篇文章开始,将依次介绍Redis高可用相关的知识——持久化、复制(及读写分离)、哨兵、以及集群。本文将先说明上述几种技术分别解决了Redis高可用的什么问题;然后详细介绍Redis的持久化技术,主要是RDB和AOF两种持久化方案;在介绍RDB和AOF方案时,不仅介绍其作用及操作方法,同时介绍持久化实现的一些原理细节及需要注意的问题。最后,介绍在实...转载 2018-06-15 11:19:38 · 167 阅读 · 0 评论 -
Redis内存模型
前言Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分。我们使用Redis时,会接触Redis的5种对象类型(字符串、哈希、列表、集合、有序集合),丰富的类型是Redis相对于Memcached等的一大优势。在了解Redis的5种对象类型的用法和特点的基础上,进一步了解Redis的内存模型,对Redis的使用有很大帮助...转载 2018-06-15 10:05:36 · 202 阅读 · 0 评论 -
Spring+Redis使用Sorted Set集合
一、概述前面我们学习了Redis中Set数据类型的相关知识,并且了解了在Spring中如何操作Set。现在Redis中还有一个Set的兄弟数据类型Sorted Set。与Set不同的是这个数据类型有一个权重参数score,根据这个参数可以进行自动的倒叙排序。二、使用场景由于Sorted Set有权重参数从而我们可以利用这一点来获取根据学生的分数来排序的集合,value就是学生的学号,score就是...原创 2018-04-20 15:42:08 · 4420 阅读 · 0 评论 -
Spring+Redis使用Set集合
一、概述Set和List类似,但是不同的就是Set中间没有重复值,可以理解成Set内部是一个value为null的HashMap,实际就是通过计算Hash的方式来进行快速排重的。二、应用场景从上面我们可以看出Set存储的是一组没有重复值的数据,那么我们就可以使用Set的这一特性来获取一组不需要重复值的数据。并且Redis给Set集合提供了求交集、并集和差集的操作。我们可以使用Set的这些特性来实现...原创 2018-04-20 11:09:46 · 2648 阅读 · 0 评论 -
Spring+Redis事务处理
一、概述很多数据库都涉及到事务的处理,当然Redis也有事务的处理。Redis中的事务是一组命令集合,及事务队列,队列中的命令要么全部执行,要么都不执行。这些命令是我们在调用EXEC函数后全部执行的。二、Spring中具体实现在Spring中我们要实现Redis事务,依然需要使用到RedisTemplate这个工具类。具体实现如下:ListOperations<String,Object&g...原创 2018-04-23 17:50:00 · 1770 阅读 · 0 评论 -
Redis简介
一、概述Redis的全称Remote Dictionary Server,是一款NoSQL(非关系型)数据库,由ANSI C编写,遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 Redis最大的特性是将所有的数据存放在内存中,所以可以获得很高的读写速度和性能。当然,它也支持将内存中的数据以快照和日志的形式持久化到硬盘,这样即使在断电、机器...原创 2018-04-19 10:38:30 · 245 阅读 · 0 评论 -
Spring+Redis实现消息队列
一、概述针对Redis,我们知道有String、List、Hash、Set、sorted Set等数据结构,而List数据结构就是一个简单的字符串列表,我们可以向列表的首部或者尾部添加或者移除元素。并且当列表中没有元素的时候会发生阻塞或者等待超时。因此我们就可以使用Redis的List数据结构的特性来实现消息队列。二、实例(1)消息队列的生产者package com.liutao.redis.mq...原创 2018-04-19 09:43:30 · 2656 阅读 · 3 评论 -
Spring+Redis使用Hash
一、概叙Redis的Hash是一个string类型的field、value映射表,特别适合用于存储对象。下面我们就来看看这种数据类型的使用场景,以及在Spring中如何使用。二、使用场景我们知道Hash存储的是一个field、value的映射表,因而比较适合用于存储对象,从而我们可以使用Hash这种数据类型来存储用户信息。@Testpublic void testHash(){ HashO...原创 2018-04-23 10:57:39 · 665 阅读 · 0 评论