Redis
ChaosMeta博客
“The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.”
展开
-
Pika的设计与实现
一.介绍pika 的单线程的性能肯定不如redis, pika是多线程的结构, 因此在线程数比较多的情况下, 某些数据结构的性能可以优于redis pika 肯定不是完全优于redis 的方案, 只是在某些场景下面更适合. 所以目前公司内部redis, pika 是共同存在的方案, DBA会根据业务的场景挑选合适的方案1.1 redis大容量问题:恢复时间长:我们线上的redis 一般...原创 2020-01-03 17:50:31 · 2724 阅读 · 0 评论 -
为什么 Redis 快照使用子进程
虽然我们经常将 Redis 看做一个纯内存的键值存储系统,但是我们也会用到它的持久化功能,RDB 和 AOF 就是 Redis 为我们提供的两种持久化工具,其中 RDB 就是 Redis 的数据快照,我们在这篇文章想要分析 Redis 为什么在对数据进行快照持久化时会需要使用子进程,而不是将内存中的数据结构直接导出到磁盘上进行存储。概述 在具体分析今天的问题之前,我们...转载 2019-12-24 11:43:56 · 563 阅读 · 0 评论 -
LRU及其在InnoDB、Redis中的使用
一.页面置换算法 地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。1.1 最佳置换法(OPT)- 理想置换法 从主存中移出永远不再需要的页面;如无这样的页面存在,则选择最...原创 2019-12-17 10:36:35 · 353 阅读 · 0 评论 -
Redis持久化实现原理
原创 2019-10-14 11:28:30 · 236 阅读 · 0 评论 -
Redis五种数据类型内部实现
部分选自 redis源码分析之跳跃表一.Redis Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的key-value类型的数据,同时还提供li...原创 2019-10-14 11:13:12 · 453 阅读 · 0 评论 -
Redis连接池
一.为什么使用连接池 首先Redis也是一种数据库,它基于C/S模式,因此如果需要使用必须建立连接,C/S模式本身就是一种远程通信的交互模式,因此Redis服务器可以单独作为一个数据库服务器来独立存在。假设Redis服务器与客户端分处在异地,虽然基于内存的Redis数据库有着超高的性能,但是底层的网络通信却占用了一次数据请求的大量时间,因为每次数据交互都需要先建立连接,假设一次数据交...原创 2019-08-16 17:44:26 · 1160 阅读 · 0 评论