摘要: Redis(八)—— LRU Cache 在计算机中缓存可谓无所不在,无论还是应用还是操作系统中,为了性能都需要做缓存。然缓存必然与缓存算法息息相关,LRU就是其中之一。笔者在最先接触LRU是大学学习操作系统时的了解到的,至今已经非常模糊。在学习Redis时,又再次与其相遇,这里将这块内容好好梳理总 阅读全文
posted @ 2018-10-22 11:24 怀瑾握瑜XI 阅读(552) 评论(0) 推荐(0) 编辑
摘要: 前面学习了Redis的数据结构以及命令、Redis中的事务和Redis对Lua脚本的支持。 这一章就对Redis这些特性做一下实战性应用——基于Redis的分布式锁实现。 Lock和Distributed Lock 在这之前先来认识下锁(Lock)和分布式锁(Distributed Lock): I 阅读全文
posted @ 2018-10-22 11:23 怀瑾握瑜XI 阅读(567) 评论(0) 推荐(0) 编辑
摘要: 本文讲述Redis高可用方案中的哨兵模式——Sentinel,RedisClient中的Jedis如何使用以及使用原理。 Redis主从复制 Redis Sentinel模式 Jedis中的Sentinel Redis主从复制 Redis主从复制是Sentinel模式的基石,在学习Sentinel模 阅读全文
posted @ 2018-10-22 11:22 怀瑾握瑜XI 阅读(1001) 评论(0) 推荐(0) 编辑
摘要: 在互联网的大趋势下,用户体验、服务的可用性日趋重要。任何一个服务的不可用,都可能导致连锁式功能故障。 前言 高可用模型的已经逐渐形成一种套路: 主备/主从模式 集群模式 主备/主从模式 至少有两台服务节点master和backup/slave。同一时刻只有一台服务节点对外提供服务——master,b 阅读全文
posted @ 2018-10-22 11:20 怀瑾握瑜XI 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 前言 前文中介绍到Redis时内存的K V数据结构存储服务器。Redis的高性能原因之一在于其读写数据都是在内存中进行。它的架构实现方式决定了Redis的数据存储具有不可靠性,易丢失,因为RAM内存在硬件问题或者断电情况下都会被擦除。 基于以上问题,为了防止数据在特殊情况下丢失,Redis支持内存数 阅读全文
posted @ 2018-10-22 11:19 怀瑾握瑜XI 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 管道技术并不是Redis特有的,管道技术在计算机科学中有很多地方的应用。 来自wiki的解释: In computing, a pipeline, also known as a data pipeline,[1] is a set of data processing elements conne 阅读全文
posted @ 2018-10-22 11:18 怀瑾握瑜XI 阅读(2741) 评论(0) 推荐(2) 编辑
摘要: Redis为什么需要Lua脚本的支持 当应用需要Redis完成一些Redis命令不支持的特性时,要么扩展Redis client或者更甚至编写c扩展Redis server。这都大大造成了应用的实现的难度。在此基础上,Redis通过内置Lua解释器,Redis client可以发起执行Lua脚本,完 阅读全文
posted @ 2018-10-22 11:17 怀瑾握瑜XI 阅读(1563) 评论(0) 推荐(0) 编辑
摘要: Redis(五)事务 引用wiki中关于事务处理的定义: Transaction processing is information processing in computer science that is divided into individual, indivisible operati 阅读全文
posted @ 2018-10-22 10:45 怀瑾握瑜XI 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 发布与订阅 Pub/Sub模式应该非常熟悉,在现实应用中被广泛的使用。如:微博中关注某个号,这个号有发新博时,关注的都会收到;github上watch了某个项目,当有issue时,就会发邮件。 Redis是支持发布与订阅的,当然大多数场景中可以使用MQ达到同样的效果。 Redis中支持的发布与订阅 阅读全文
posted @ 2018-10-22 10:40 怀瑾握瑜XI 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 之前的文章中说了Redis的常见应用场景和特性,在特性章节中也大致说了数据结构契合场景。因为我想在更深入、更全面的学习Redis之前,了解场景和特性,才能在学习时更加全面且理解更透彻: redis的什么特性支持这些应用场景? 为什么这些场景下使用redis会带来好处? 数据类型 Redis数据结构大 阅读全文
posted @ 2018-10-22 10:39 怀瑾握瑜XI 阅读(402) 评论(0) 推荐(0) 编辑
摘要: Redis是高效的内存数据库或者说缓存。对多种数据结构都支持,每种数据结构都有相应的应用场景。 特性 Redis支持非常多的特性,从用途、性能、高可用、数据安全方面都提供了相应的支持和保障。 Redis中具有多种类型的数据结构,String可以作为key/value缓存,List可以作为全局队列、可 阅读全文
posted @ 2018-10-22 10:38 怀瑾握瑜XI 阅读(623) 评论(0) 推荐(0) 编辑
摘要: Redis是开源的内存数据存储,常被用作为内存数据库、缓存、全局队列、计数器等等。 Redis安装 Redis分为多种模式:单机模式、高可用模式、集群模式。这篇中主要简介单机版的安装方式。 源码构建式 1.安装 首先下载redis源码,目前redis官网http://redis.io提供两种版本稳定 阅读全文
posted @ 2018-10-22 10:11 怀瑾握瑜XI 阅读(442) 评论(0) 推荐(0) 编辑