大概介绍
redis 客户端设计主要是存储客户的链接,请求,请求解析的命令,执行结果。先看server的结构和client的结构,server里面有多个client,相当于一个服务端可以连多个客户端,服务端根据事件触发模式依次处理客户端的请求。
server结构
struct redisServer {
/* General */
// 配置文件的绝对路径
cha...
分类:
其他好文 时间:
2015-01-27 23:35:08
阅读次数:
1166
redis 复制(Replication)功能,是实现主从数据库。
如果想提高请求效率,可以使用主数据库用于写操作,从数据库用于读操作。并且可以使用一个主,多个从。
redis是个单线程的程序,所有的事件(文件事件和时间事件)都是在一个线程中完成的。没有什么读写锁,可以释放程序的执行效率。从另一个角度来说,单线程只可能在一个CPU里面跑,没有利用多核CPU的处理能力,可以使用主从数据库来解决处...
分类:
其他好文 时间:
2015-01-15 00:33:02
阅读次数:
197
redis是个内存数据库,所有的操作都是在内存中进行,但是内存有个特点是,程序出问题或者系统出问题、重启,关机都会造成内存数据丢失。
所以需要把内存中的数据dump到硬盘中备份起来。
RDB持久化,是内存数据库dump到硬盘的过程,其中RDB是个文件格式,待会介绍。
本文从两个方向剖析,
1)加载dump.rdb文件到内存中。
2)内存数据库dump到硬盘中dump.rdb文件。...
分类:
数据库 时间:
2015-01-14 00:59:52
阅读次数:
368
redis源码分析,介绍redis的初始化及启动过程...
分类:
其他好文 时间:
2015-01-13 23:16:11
阅读次数:
303
redis是个key, value数据库,是个内存数据库。目前是个互联网公司的架构标配。
支持的数据对象有string, list, set, zest和hash object。
数据结构:
数据库的核心结构是dict(实现是使用hashmap):
key: string
value: string或者list或者set或者zest或者hash object。
dict数据结构...
分类:
其他好文 时间:
2015-01-13 00:10:48
阅读次数:
386
https://github.com/huangz1990/redis-3.0-annotated/blob/unstable/src/sds.c#L120 1 /* SDSLib, A C dynamic strings library 2 * 3 * Copyright (c) ...
分类:
其他好文 时间:
2014-11-22 00:35:05
阅读次数:
341
学习flexible array member是因为阅读Redis源码遇到的,sds.h中一开始就用到了。==============================================================================================在讲述...
分类:
编程语言 时间:
2014-11-21 21:46:00
阅读次数:
250
原文链接在这篇文章中, 我将向大家介绍一种我认为比较合理的 Redis 源码阅读顺序, 希望可以给对 Redis 有兴趣并打算阅读 Redis 源码的朋友带来一点帮助。第 1 步:阅读数据结构实现刚开始阅读 Redis 源码的时候, 最好从数据结构的相关文件开始读起, 因为这些文件和 Redis 中...
分类:
其他好文 时间:
2014-11-21 01:18:12
阅读次数:
340