Redis
Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。
程序员黑哥
这个作者很懒,什么都没留下…
展开
-
浅谈Redis五种数据结构的底层原理
概念Redis作为一个开源的用C编写的非关系型数据库,基于优秀的CRUD效率,常用于软件系统的缓存,其本身提供了以下五种数据格式:string:字符串list:列表hash:散列表set:无序集合zset:有序集合接下来我们就要针对这五种数据结构,来分析其底层的结构这里选用的版本是redis-5.0.4,所以可能有很多地方和如今网络上的其他博文不太一致,不同的地方我会在文中指出string因为redis使用c语言开发,所以自然没有java和c++的那些字符串类库,原创 2020-06-14 21:03:35 · 696 阅读 · 0 评论 -
80% 人不知道的 Redis 分布式锁的正确实现方式(Java 版)
前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我们至少要确保锁的实现同时满足以下四个条件:互斥性。在任意时刻,只有一个客户端能持有锁。不会发生死锁。即使有一个客户端在持有锁的期间原创 2020-06-09 15:51:36 · 181 阅读 · 0 评论 -
这可能是目前最全的Redis高可用技术解决方案总结
本文主要针对Redis常见的几种使用方式及其优缺点展开分析。一、常见使用方式Redis的几种常见使用方式包括:Redis单副本;Redis多副本(主从);Redis Sentinel(哨兵);Redis Cluster;Redis自研。二、各种使用方式的优缺点1、Redis单副本Redis单副本,采用单个Redis节点部署架构,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯缓存业务场景。优点:架构简单,部署方便;高性价比:缓存使用时无需备用节点原创 2020-05-30 21:44:47 · 306 阅读 · 0 评论 -
为什么单线程的Redis能够达到百万级的QPS?
性能测试报告查看了下阿里云 Redis 的性能测试报告如下,能够达到数十万、百万级别的 QPS(暂时忽略阿里对 Redis 所做的优化),我们从 Redis 的设计和实现来分析一下 Redis 是怎么做的。Redis 的设计与实现其实 Redis 主要是通过三个方面来满足这样高效吞吐量的性能需求高效的数据结构多路复用 IO 模型事件机制高效的数据结构Redis 支持的几种高效的数据结构 string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有原创 2020-06-01 16:05:23 · 729 阅读 · 0 评论 -
面试中又被问到Redis如何实现抢购,赶快代码实现一波吧!
文本已收录至我的GitHub精选文章,欢迎Star:https://github.com/Java-Ling/Java-Interview-guide面试常常遇到写一个抢购实例,或者讲讲抢购实现想法,然后总是讲不明白,因为目前工作没做抢购这一块儿。但是这个想法今天终于搞明白了,其中也参照了一些大佬的做法。这篇文章直接使用redis,其中注释也写的挺明白的,直接上代码:junit测试类:Log log = LogFactory.getLog(getClass()); @Autowire.原创 2020-05-14 17:39:14 · 162 阅读 · 0 评论 -
为什么要使用Redis的多数据库
为什么要使用redis的多数据库,我们项目中就这么用了,这点我也想不明白。如果是要做业务隔离,那么可以给不同业务的缓存key添加一个前缀,如果因此导致key过长,可以把一个大的redis集群拆分为对应多个业务的集群。不管分多少个库,集群总的内存大小是不变的,所能存储的数据也是一样多的,为何不把一个大的集群拆分给每个业务使用呢?既然要做业务隔离,将一个大的redis集群拆分给不同业务使用,根据不同...原创 2020-04-24 20:14:24 · 837 阅读 · 2 评论 -
这可能是目前最全的Redis高可用技术解决方案
Redis常见的几种主要使用方式:Redis 单副本Redis 多副本(主从)Redis Sentinel(哨兵)Redis ClusterRedis 自研Redis各种使用方式的优缺点:Redis 单副本,采用单个Redis节点部署架构,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯缓存业务场景。优点:1、架构简单、部署方便2、高性价比,...原创 2020-05-08 16:56:40 · 287 阅读 · 0 评论