
redis专栏
文章平均质量分 93
专门介绍redis相关技术内容
波波烤鸭
10余年架构和线上讲师工作经验。精通Java,微服务和云原生相关,致力于Java技术的免费分享。
展开
-
SpringDataRedis介绍
实际项目中我们一般都会使用Redis来作为我们的缓存组件,往往又会和Spring一块使用,虽然Redis官方提供的有Jedis等客户端工具,但是使用的时候还是有些不方便,这时SpringDataRedis出现了。Redis相关单独介绍参考:https://dpb-bobokaoya-sm.blog.csdn.net/column/info/33752SpringDataRedis一、...原创 2019-05-20 11:01:16 · 3494 阅读 · 0 评论 -
NoSQL(MongoDB,Hbase,Redis)介绍
NoSQL,泛指非关系型的数据库,随着互联网的发展传统的关系型数据库面对持续增长的数据处理起来显得越来越力不从心,此时非关系型数据库应运而生。NoSQL数据库四种类型 目前大家基本认同将NoSQL数据库分为四大类:键值存储数据库,文档型数据库,列存储数据库和图形数据库,其中每一种类型的数据库都能够解决关系型数据不能解决的问题。在实际应用中,NoSQL数据库的分类界限其实没有那么明显,往...原创 2019-05-06 23:51:29 · 2339 阅读 · 0 评论 -
Redis应用之缓存实现
文章目录Redis缓存1.缓存概述2.缓存方式不设置过期时间设置过期时间3.总结 Redis的众多应用场景中缓存绝对是频率最高的场景了。本文来介绍下Redis作为缓存要注意的地方。Redis缓存1.缓存概述 缓存(Cache)的作用是减少服务器对数据源的访问频率,从而提高数据库的稳定性。访问的流程如下。流程图代码逻辑public Goods searchArticleById...原创 2019-03-17 11:47:10 · 112031 阅读 · 0 评论 -
Redis哨兵模式详解
文章目录哨兵模式什么是哨兵实现哨兵模式1.配置一主两从2.哨兵模式配置3.一个哨兵监控多个Redis主从系统实现原理主观下线客观下线选举领头哨兵故障恢复 在主从模式的Redis系统中,从数据库在整个系统中起到了数据冗余备份和读写分离的作用,但是当数据库遇到异常中断服务后,我们只能通过手动的方式选择一个从数据库来升格为主数据库,显然这种方式很麻烦需要人工介入,这时通过哨兵模式可以实现自动化的系统...原创 2019-03-17 22:32:38 · 5371 阅读 · 0 评论 -
Redis应用之任务队列
Redis实现任务队列1.任务队列松耦合性 生产者和消费者无需知道彼此的实现细节,只需要约定好任务的描述格式,这使得生产者和消费者可以由不同的团队使用不同的编程语言编写。易于扩展 消费者可以有多个,而且可以分布在不同的服务器中,如下图,借此可以轻易的降低单台服务器的负载。2.Redis实现任务队列 redis中实现任务队列我们可以通过List中的LPUSH和RPOP命令来实现...原创 2019-03-17 13:54:35 · 3181 阅读 · 0 评论 -
Redis应用之限制访问频率
我们知道当网站的访问量突然很大的时候肯定会对服务器造成影响,甚至无法访问,如果是正常的访问那么很好说明业务量增大可以考虑系统的扩展,但是如果是搜索引擎爬虫频繁访问或是一些恶意访问,那这时候我们就应该限制这些访问的访问次数。redis刚好可以解决这个问题Redis实现限制访问频率1.实现访问一 限制每个用户每分钟最多只能访问100个页面。实现思路:key使用有"rate.limiting...原创 2019-03-17 10:22:03 · 30903 阅读 · 0 评论 -
Redis客户端操作之Jedis
在前面的文章给大家详细的介绍了Redis各种知识点,本文主要给大家介绍下java程序怎么操作Redis数据。Redis之集群环境搭建 Redis官网中提供了各种语言的客户端,使用起来很方便,本文主要介绍java中常用的JedisJedis Jedis Client是Redis官网推荐的一个面向java客户端,库文件实现了对redis各类API进行封装调用,通过这些API我们会...原创 2019-02-16 11:22:11 · 3878 阅读 · 0 评论 -
Redis之集群环境搭建
前面文章介绍了Redis的主从复制,虽然该模式能够在一定程度上提高系统的稳定性,但是在数据访问量比较大的情况下,单个master应付起来还是比较吃力的,这时我们可以考虑将redis集群部署,本文就来重点给大家介绍下Redis的集群部署操作。Redis之主从复制2Redis之主从复制1Redis集群一、Redis集群相关概念1.Redis集群介绍Redis 集群是一个提供在多个Red...原创 2019-02-14 12:08:00 · 3828 阅读 · 1 评论 -
Redis集群环境Ruby必须版本2.2以上解决
Redis集群环境中需要ruby环境,执行gem install redis时,提示如下错误:[root@hadoop-node01 src]# gem install redisERROR: Error installing redis: redis requires Ruby version >= 2.2.2.在centOS中yum源中对ruby的支持版本为2.0.0,可ge...原创 2019-02-14 00:41:43 · 3195 阅读 · 0 评论 -
Redis之主从复制2
上篇文章给大家介绍了Redis的主从复制,但是并没有介绍完整,本文继续主从复制的介绍Redis之主从复制1主从复制上篇文章搭建的主从结构图本文我们换种结构具体实现实现方式也很简单,我们只需要在6381上执行如下命令即可127.0.0.1:6381> slaveof 127.0.0.1 6380OK查看6379节点信息在6380上查看在6381上查看...原创 2019-02-13 16:32:27 · 2539 阅读 · 0 评论 -
Redis之主从复制1
前面的两篇文章给大家介绍了Redis的两种持久化方式RDB和AOF,两种方式各有各的优缺点,本文给大家介绍Redis的主从复制,算是Redis的第三种持久化方式。Redis持久化之AOFRedis持久化之快照(RDB)主从复制主从复制可以扩展Redis的性能,比单机版的Redis性能更加的稳定,Redis的主从复制和关系型数据库的主从复制差不多。从机能精确的从主机复制信息。主从复制的...原创 2019-02-13 15:31:15 · 2795 阅读 · 0 评论 -
Redis持久化之AOF
在上篇文章中介绍了快照持久化,对于它的优缺点大家也有所有了解了。本文主要介绍redis持久化中的另一种方式AOP(Append only file)持久化Redis持久化之快照(RDB)AOF持久化与快照持久化通过直接保存 Redis 的键值对数据不同,AOF 持久化是通过保存 Redis 执行的写命令来记录 Redis 的内存数据。理论上说,只要我们保存了所有可能修改 Redis ...原创 2019-02-13 11:41:08 · 3466 阅读 · 0 评论 -
Redis持久化之快照(RDB)
通过前面文章的介绍,大家对于redis的基本操作应该比较了解了。本文主要介绍下redis持久化方式中的快照持久化Redis教程10(事务)Redis教程09(发布和订阅)Redis持久化所谓的持久化就是保持我们的数据不丢失,将数据通常保存在我们的硬盘中。在Redis中持久化的方式有两种,一种是快照持久化,一种是AOF持久化,各有各的优缺点,在项目中我们得根据实际的情况来选择具体的持...原创 2019-02-13 10:42:03 · 6047 阅读 · 0 评论 -
Redis教程10(事务和watch)
redis是NOSQL数据库,所以也存在事务,只是此事务和关系型数据库的事务是有区别的。Redis教程09(发布和订阅)事务实例Redis中事务的使用其实非常简单,通过MULTI命令即可。127.0.0.1:6379> multiOK在MULTI命令执行之后,我们可以继续发送命令执行,但此时命令不会立即执行,而是保持到一个队列中,如下127.0.0.1:6379>...原创 2019-02-12 23:45:46 · 2447 阅读 · 0 评论 -
Redis教程09(发布和订阅)
之前几篇文章给大家介绍了redis的五种数据类型及相关的命令,本文介绍redis中比较简单的发布订阅Redis教程08(ZSet有序集合介绍)Redis教程07(Set集合介绍)Redis教程06(List类型命令介绍)Redis教程05(hash类型命令介绍)Redis教程04(String类型之BIT)Redis教程03(String介绍)Redis发布和订阅Redis...原创 2019-02-12 17:59:12 · 2485 阅读 · 1 评论 -
Redis教程08(ZSet有序集合介绍)
上文中介绍了Redis中的Set集合,Set集合是无序的不可重复的。而我们本文要介绍的ZSet其实是在Set的基础上绑定了一个score来实现集合数据按照score排序的集合。Redis教程07(Set集合介绍)有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的...原创 2019-02-12 17:08:18 · 3339 阅读 · 0 评论 -
Redis教程07(Set集合介绍)
上文介绍的list列表是有序集合,可以保存重复记录,在Redis中的Set集合是无序的,不可以存储重复记录的。本文主要介绍Set集合中的常用命令Redis教程06(List类型命令介绍)集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。命令说明sadd添加一个或多个元素到集合中,如果集合中存在该元素则忽略scar...原创 2019-02-12 16:08:51 · 2335 阅读 · 0 评论 -
Redis教程06(List类型命令介绍)
在上文中介绍了Hash类型的数据相关的命令,本文介绍下List列表相关的命令Redis教程05(hash类型命令介绍)列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)一个列表最多可以包含 2E32 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。命令说明lpush向列表头部添加一个或多个元素...原创 2019-02-12 15:23:29 · 2355 阅读 · 0 评论 -
Redis教程05(hash类型命令介绍)
前面几篇文章给大家介绍了String的常用命令,本篇主要介绍下Hash的常用命令Redis教程04(String类型指BIT)Redis教程03(String介绍)Hash介绍在实际开发过程中我们肯定会碰到很多需要存储对象的需求,此时hash就比较合适了。hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。Redis 中每个 hash 可...原创 2019-02-12 11:52:22 · 2453 阅读 · 0 评论 -
Redis教程04(String类型之BIT)
在上篇文章中介绍了String类型中常用的命令,但没有涉及到bit相关的命令,本文主要介绍下bit相关的操作命令。开发中有时这些命令的使用会更优效率。Redis教程03(String介绍)Redis中字符串的存储方式都是以二进制的方式存储的。比如:127.0.0.1:6379> set k1 aOKk1的值为a,对应的ascii码是97,转换为二进制就是01100001。B...原创 2019-02-12 10:55:54 · 2622 阅读 · 0 评论 -
Redis教程03(String介绍)
上篇文章中我们介绍了通用的相关命令,本文主要介绍String相关的命令Redis教程02(五大数据类型简介)Set命令设置指定 key 的值127.0.0.1:6379> set name abcOKGet命令返回 key 的值,如果 key 不存在时,返回 nil。 如果 key 不是字符串类型,那么返回一个错误。127.0.0.1:6379> get name...原创 2019-02-10 09:01:59 · 2171 阅读 · 0 评论 -
Redis教程02(五大数据类型简介)
在上篇文章中我们介绍了Redis在Linux中的安装Redis教程01(linux环境下安装)本文给大家介绍下Redis中的五大数据类型Redis中的数据都是key/value对,这里的数据类型指的是value的值的类型数据类型说明String是Redis中最基本的数据类型,二进制安全的,它可以包含任意数据类型。如图片。Redis中String类型的数据上限的512M...原创 2019-02-10 09:01:30 · 2288 阅读 · 0 评论 -
Redis教程01(linux环境下安装)
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件. 它支持多种类型的数据结构,是我们在开发中使用频率比较高的一个组件。本文主要讲解Redis的安装,后续文章会介绍其相关的知识点。下载Redis官网下载地址将安装文件下载到/opt目录下。进入该目录通过wget下载wget http://download.redis.io/releas...原创 2019-02-09 00:16:29 · 2873 阅读 · 2 评论 -
Java观察者模式(Observer)
观察者模式java GOF23种设计模式中的一种。在最近介绍的Redis和ActiveMQ中都涉及到了观察者模式,所以我们在本文详细介绍下此模式:观察者模式 观察者模式又称为发布/订阅(Publish/Subscribe)模式,在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新.使用场景广播机制场景1.聊天室程序的创建。服务器创建好后,...原创 2019-02-16 23:57:11 · 16840 阅读 · 1 评论