Rumah > pangkalan data > tutorial mysql > redis启动流程

redis启动流程

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-07 16:41:32
asal
1281 orang telah melayarinya

1. 准备运行环境 * 设置oom handler,zmalloc分配内存失败时调用* 初始化随机种子,用于生成随机数* 将server参数初始化为默认值 * 创建命令与处理函数的映射表 2. 解析命令行参数、loadServerConfig()解析配置文件 * 配置文件会覆盖命令行指定的参数* 无效

1. 准备运行环境

<code>* 设置oom handler,zmalloc分配内存失败时调用
* 初始化随机种子,用于生成随机数
* 将server参数初始化为默认值  
* 创建命令与处理函数的映射表
</code>
Salin selepas log masuk

2. 解析命令行参数、loadServerConfig()解析配置文件

<code>* 配置文件会覆盖命令行指定的参数
* 无效的配置项或者不合理的配置值会导致redis无法正常启动
</code>
Salin selepas log masuk

3. initServer()初始化服务

<code>* 安装信号处理函数  
* 创建共享对象,redis预分配好常用的对象用于共享,以节省内存  
* 根据maxc lients配置调整max open files
*  创建全局db字典,每个db对应一个dict  
* 监听网络端口,安装事件处理器  
* 如果开启了aof,打开aof文件  
* 创建serverCron定时器
</code>
Salin selepas log masuk

4. loadDataFromDisk()从rdb或aof文件加载数据

<code>* load数据出错(比如文件格式乱掉)等会导致redis不能正常启动
* loading的过程中,redis仍能处理请求,但大部分请求都会回复-LOADING错误
</code>
Salin selepas log masuk

5. aeMain()开始事件循环,接收客户端请求

<code>监听文件描述符的事件处理函数初始化为acceptTcpHandler,新建立的连接的事件处理函数设置为readQueryFromClient,readQueryFromClient从网络连接上读取请求,解析出请求参数并处理。
</code>
Salin selepas log masuk

The post redis启动流程 appeared first on Yun Notes.

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Isu terkini
masalah sambungan php redis
daripada 1970-01-01 08:00:00
0
0
0
Mengenai ralat kecil dalam manual redis
daripada 1970-01-01 08:00:00
0
0
0
Adakah mungkin untuk menyepadukan fungsi REDIS?
daripada 1970-01-01 08:00:00
0
0
0
python2.7 - django tidak boleh menyambung ke redis
daripada 1970-01-01 08:00:00
0
0
0
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan