redis
文章平均质量分 91
无怨_无悔
了解这个世界,了解更完整的自己 再繁茂的树木都是从根长起的,再多困扰我们的问题都是由一个问题引起的。 所以无论是坏是好,请你珍惜拥有我的机会。
展开
-
redis cluster
官方集群方案redis cluster是Redis的分布式集群解决方案,在3.0版本推出后有效地解决了redis分布式方面的需求实现了数据在多个Redis节点之间自动分片、故障自动转移、扩容机制等功能。集群关心的问题1 、增加了 slot 槽的计算,是不是比单机性能差?共16384个槽,slots槽计算方式公开的, HASH_SLOT = CRC16(key) mod 16...原创 2020-03-27 21:39:53 · 367 阅读 · 0 评论 -
redis哨兵机制
哨兵机制核心作用核心操作流程哨兵的配置启动命令: redis-server sentinel.conf --sentinel# 配置文件在sentinel运行期间是会被动态修改的# sentinel如果重启时,就可以根据这个配置来恢复其之前所监控的redis集群的状态# 绑定IPbind 0.0.0.0# 默认yes,没指定密码或者指定IP的情况下,外网无法访问...原创 2020-03-27 21:29:08 · 455 阅读 · 0 评论 -
redis 主从集群
主从复制主从复制解决什么问题:redis-server单点故障 单节点QPS有限 持久化,从处理持久化,避免对主性能影响主从复制应用场景分析读写分离场景,规避redis单机瓶颈 故障切换,master出问题后还有slave节点可以使用搭建主从复制1.第一种方式:命令# 连接需要实现从节点的redis,执行下面的命令slaveof [ip] [...原创 2020-03-27 15:53:58 · 663 阅读 · 0 评论 -
redis的机制(2)
redis持久化机制 redis的数据都存放在内存中,如果没有配置持久化机制,重启之后就会全丢失了。需要开启持久化机制,将数据保存到磁盘上,当redis重启后,可以从磁盘上恢复。 两种持久化方式RDB和AOFRDB 在指定时间内对数据记性快照保存,会缺失部分数据。 恢复方式 : 1.client端直接用命令BGSAVE或者SAVE创建...原创 2020-03-27 11:31:01 · 208 阅读 · 0 评论 -
redis基本类型(1)
redis介绍 Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, so...原创 2020-03-27 10:58:10 · 156 阅读 · 0 评论 -
redis 漏桶算法—Lua
漏桶算法import java.io.IOException;import java.nio.charset.Charset;import org.springframework.core.io.ClassPathResource;import com.google.common.io.Files;import redis.clients.jedis.Jedis;/*...原创 2020-03-01 13:35:54 · 2950 阅读 · 5 评论 -
redis 令牌桶算法—Lua
令牌桶算法场景:秒杀(也可以用于平滑限流某个接口请求)import java.io.IOException;import java.nio.charset.Charset;import org.springframework.core.io.ClassPathResource;import com.google.common.io.Files;import redis.cli...原创 2020-03-01 13:22:01 · 1606 阅读 · 1 评论 -
Redis数据备份和重启恢复
一、对Redis持久化的探讨与理解目前Redis持久化的方式有两种: RDB 和 AOF首先,我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复。Redis是一个内存数据库,无论是RDB还是AOF,都只是其保证数据恢复的措施。所以Redis在利用RDB和AOF进行恢复的时候,都会读取RDB或AOF文件,重新加载到内存中。RDB就是Snapshot快照存储,是默认的持久化方...转载 2020-02-24 12:54:44 · 407 阅读 · 0 评论 -
Redis 分布式锁
最近项目又用到分布式锁,下面把自己写的redis分布式锁代码贡献出来。public class RedisManager { private static final String SET_IF_NOT_EXIST = "NX";//仅在键不存在时设置键。 private static final String SET_WITH_EXPIRE_TIME = "EX";//P...原创 2020-02-05 17:59:58 · 407 阅读 · 0 评论 -
Redis 和 Memcached 的区别详解
Redis的作者Salvatore Sanfilippo曾经对这两种基于内存的数据存储系统进行过比较:Redis支持服务器端的数据操作:Redis相比Memcached来说,拥有更多的数据结构和并支持更丰富的数据操作,通常在Memcached里,你需要将数据拿到客户端来进行类似的修改再set回去。这大大增加了网络IO的次数和数据体积。在Redis中,这些复杂的操作通常和一般的GET/SET一样...转载 2020-02-05 17:52:19 · 301 阅读 · 0 评论 -
分享30道Redis面试题
1、什么是Redis?简述它的优缺点?Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。Redis的出色之处不仅仅是性能,Redis最大...转载 2018-10-26 17:31:46 · 208 阅读 · 0 评论 -
Redis 分布式锁的正确实现方式( Java 版 )
前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我们至少要...转载 2018-08-27 08:28:12 · 209 阅读 · 0 评论 -
Redis分布式锁的正确实现方式
前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我转载 2017-11-01 09:33:30 · 15929 阅读 · 3 评论 -
浅析 Redis 复制
摘要早期的 RDBMS 被设计为运行在单个CPU之上,读写操作都由经单个数据库实例完成,复制技术使得数据库的读写操作可以分散在运行于不同CPU之上的独立服务器上.Redis作为一个开源的、优秀的key-value缓存及持久化存储解决方案,也提供了复制功能,本文主要介绍Redis的复制原理及特性。Redis复制概论数据库复制指的是发生在不同原创 2016-06-02 14:31:33 · 3445 阅读 · 0 评论 -
redis 学习笔记(5)-Spring与Jedis的集成
首先不得不服Spring这个宇宙无敌的开源框架,几乎整合了所有流行的其它框架,http://projects.spring.io/spring-data/ 从这上面看,当下流行的redis、solr、hadoop、mongoDB、couchBase... 全都收入囊中。对于redis整合而言,主要用到的是spring-data-redis 使用步骤:一、pom添加依赖项转载 2015-06-15 11:26:37 · 1329 阅读 · 0 评论 -
redis 学习笔记(2)-client端示例代码
redis提供了几乎所有主流语言的client,java中主要使用二种:Jedis与Redisson一、Jedis的使用1 dependency>2 groupId>redis.clientsgroupId>3 artifactId>jedisartifactId>4 vers转载 2015-06-15 11:20:34 · 551 阅读 · 0 评论 -
redis 学习笔记(4)-HA高可用方案Sentinel配置
上一节中介绍了master-slave模式,在最小配置:master、slave各一个节点的情况下,不管是master还是slave down掉一个,“完整的”读/写功能都将受影响,这在生产环境中显然不能接受。幸好redis提供了sentinel(哨兵)机制,通过sentinel模式启动redis后,自动监控master/slave的运行状态,基本原理是:心跳机制+投票裁决每个sent原创 2015-06-15 11:25:14 · 436 阅读 · 0 评论 -
redis 学习笔记(3)-master/slave(主/从模式)
类似mysql的master-slave模式一样,redis的master-slave可以提升系统的可用性,master节点写入cache后,会自动同步到slave上。环境:master node: 10.6.144.155:7030slave node: 10.6.144.156:7031 一、配置仅需要在slave node上修改配置:找转载 2015-06-15 11:22:48 · 605 阅读 · 0 评论 -
redis 学习笔记(1)-编译、启动、停止
一、下载、编译redis是以源码方式发行的,先下载源码,然后在linux下编译1.1 http://www.redis.io/download 先到这里下载Stable稳定版,目前最新版本是2.8.171.2 上传到linux,然后运行以下命令解压tar xzf redis-2.8.17.tar.gz1.3 编译cd redis-2.8.17make转载 2015-06-15 11:18:48 · 437 阅读 · 0 评论