随笔分类 - redis
摘要:这里的自动过期,Redis并没有提供相应的api,但是可以使用一下方法来实现。 需求背景: 给用户返回的文章要求七日内不能重复;文章是存放在java list里边;(这一块就是从db将文章拿出来,然后放入list,放入java内存中)。 分析: 一开始我的做法是这样: 当用户第一次访问的时候,创建一
阅读全文
摘要:前言 Redis集群模式主要有2种: 主从集群 分布式集群。 前者主要是为了高可用或是读写分离,后者为了更好的存储数据,负载均衡。 本文主要讲解主从集群。本章主要讲解后一半部分,Redis集群。 与本文相关的代码与配置文件都已经上传至github上: 地址: https://github.com/S
阅读全文
摘要:前言: 一,为什么要使用redis 1,解决应用服务器的cpu和内存压力 2,减少io的读操作,减轻io的压力 3,关系型数据库扩展性不强,难以改变表的结构 二,优点 1,nosql数据库没有关联关系,数据结构简单,扩展容易 2,数据读写快,能够每秒胜任几十万的并发,处理速度快 三,使用场景 1,数
阅读全文
摘要:常见使用方式 Redis 的几种常见使用方式包括: Redis 单副本 Redis 多副本(主从) Redis Sentinel(哨兵) Redis Cluster Redis 自研 Redis 单副本 Redis 多副本(主从) Redis Sentinel(哨兵) Redis Cluster R
阅读全文
摘要:<参考>http://www.cnblogs.com/ruiati/p/6374152.html 1. 自行下载redis客户端。redis官方不支持Windows系统,所以官网上是下载不到的,需要到github上面下载,地址: https://github.com/MicrosoftArchive
阅读全文
摘要:模式类型 主从模式(redis2.8版本之前的模式)、哨兵sentinel模式(redis2.8及之后的模式)、redis cluster模式(redis3.0版本之后) 主从模式原理 同Mysql主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况。为了分担读压
阅读全文
摘要:redis cluster redis cluster是Redis的分布式解决方案,在3.0版本推出后有效地解决了redis分布式方面的需求 自动将数据进行分片,每个master上放一部分数据 提供内置的高可用支持,部分master不可用时,还是可以继续工作的 支撑N个redis master no
阅读全文
摘要:set跟Set之间可以有并集运算,因为他们存储的数据字符串集合,不能有一样的成员出现在一个zset中,但是为什么有了set还要有zset呢?zset叫做有序集合,而set是无序的,zset怎么做到有序的呢?就是zset的每一个成员都有一个分数与之对应,并且分数是可以重复的。有序集合的增删改由于有啦排
阅读全文
摘要:Redis 数据结构简介 Redis 可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。 下面来对这5种数据结构类型作简单的介绍: 结构类型结构存储的值结构的读写能力 String
阅读全文
摘要:一、Blpop 命令移出并获取列表的第一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。redis 127.0.0.1:6379> BLPOP LIST1 LIST2 .. LISTN TIMEOUT返回值如果列表为空,返回一个 nil 。 否则,返回一个含有两个元素的列表,第
阅读全文
摘要:1.Redis 这就不必哆嗦了,Redis 支持丰富的数据类型,String ,List,Sets ,Sorted Sets,Hashes,这就可以看出Java 操作Redis就要针对各种类型都有自己的操作。这里自己学习的是Spring-data-redis 中基于Jedis connection的
阅读全文
摘要:Redis 是完全开源免费的,遵守BSD协议,先进的key - value持久化产品。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map),列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。下面是使用spring-data
阅读全文
摘要:一,问题描述: (如题目)通过jedis连接redis单机成功,使用JedisCluster连接redis集群一直报Could not get a resource from the pool 但是使用redis客户端可以连接集群(我使用的redis desktop manager) 在java中通
阅读全文
摘要:一,前言 redis 现在已经成为系统缓存的必备组件,针对缓存读取更新操作,通常我们希望当缓存过期之后能够只有一个请求去更新缓存,其它请求依然使用旧的数据。这就需要用到锁,因为应用服务多数以集群方式部署,因此这里的锁就必需要是分布式锁才能符合需求。 二,spring-boot 引入 redis 在
阅读全文
摘要:// 获取锁getLock() { // 是否有正在执行的线程 boolean hasLock = false; try { hasLock = redisClient.setnx("lockKey", "ing") == 1; if (hasLock) { redisClient.expire("
阅读全文
摘要:最近有一个竞拍的项目会用到分布式锁,网上查到的结果是有三种途径可以实现。1.数据库锁机制,2.redis的锁,3.zookeeper。考虑到使用mysql实现会在性能这一块会受影响,zookeeper又是不怎么会。所以使用redis来实现了。第一种:使用redis的watch命令进行实现 如上图所示
阅读全文
摘要:前言 分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细
阅读全文

浙公网安备 33010602011771号