
Redis
李树江
生活的理想,就是为了理想的生活。
展开
-
Redis全面解析三:redis分布式锁的实现原理你了解吗
前言分布式概念提出之前,项目结构基本都是通过单机部署,针对多线程并发问题,java为我们已经提供了各种锁来解决问题。随着用户量的提升单体服务已经不能满足高并发场景的需求,于是兴起了分布式系统以及微服务的理念。由此引出分布式锁的概念,在多台机器与客户端之间引入一个分布式锁层,在高并发场景当多个线程访问服务器资源时,可以通过不同的机器对共享资源进行操作,jdk锁保证了单台机器内的线程安全(即单机里...原创 2020-05-04 15:59:38 · 4986 阅读 · 0 评论 -
Redis Cluster为什么有16384个槽?
前言Redis 集群并没有使用一致性hash,而是引入了哈希槽的概念。Redis 集群有16384个哈希槽,每个key通过CRC16校验后对16384取模来决定放置哪个槽,集群的每个节点负责一部分hash槽。但为什么哈希槽的数量是16384(2^14)个呢,这个问题在github上有人提过,作者也给出了解答(点击查看),下面我们来简单分析一下。正文Redis Cluster的工作原理:...原创 2020-05-03 10:42:05 · 2254 阅读 · 0 评论 -
Redis全面解析零:redis从入门到精通
Redis 数据类型Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。①string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。Redis常用SET和GET命令。②Redis hash 是一个键值(key=>value)对集合...原创 2020-05-03 10:09:29 · 263 阅读 · 0 评论 -
Redis全面解析二:redis高可用高并发集群方案
前言Redis 缓存作为使用最多的缓存工具被各大厂商争相使用。通常我们会使用单体的 Redis 应用作为缓存服务,然而我们日常在对于redis的使用中,经常会遇到一些问题:高可用问题,如何保证redis的持续高可用性。 容量问题,单实例redis内存无法无限扩充,达到32G后就进入了64位世界,性能下降。 并发性能问题,redis号称单实例10万并发,但也是有尽头的。如果只使用一个r...原创 2020-05-02 18:38:24 · 2178 阅读 · 0 评论 -
Redis全面解析一:redis是单线程结构为何还可以支持高并发
前言redis设计成单线程结构考虑:从redis的性能上进行考虑,单线程避免了上下文频繁切换问题,效率高;从redis的内部结构设计原理进行考虑,redis是基于Reactor模式开发了自己的网络事件处理器: 这个处理器被称为文件事件处理器理解redis单线程Redis客户端对服务端的每次调用都经历了发送命令,执行命令,返回结果三个过程。其中执行命令阶段,由于Redis是单线程来...原创 2020-05-01 10:14:36 · 1515 阅读 · 0 评论