ngx_time_init时间管理模块初始化,见nginx.c中的main函数,即属于启动项之一。
时间管理对以下项提供时间:
1. 错误日志
2. http处理
3. http日志
4. http日志iso
5. syslog
static ngx_time_t cached_time[NGX_TIME_SLOTS];该全局变量为nginx维护的时间缓冲。
主要通过缓冲减少并发间的相互影响。提高性能。
ngx_next_time:
获取比较大的时间,如果小于当前时间则,day++。
ngx_time_sigsafe_update
时间管理对以下项提供时间:
1. 错误日志
2. http处理
3. http日志
4. http日志iso
5. syslog
static ngx_time_t cached_time[NGX_TIME_SLOTS];该全局变量为nginx维护的时间缓冲。
主要通过缓冲减少并发间的相互影响。提高性能。
ngx_next_time:
获取比较大的时间,如果小于当前时间则,day++。
ngx_time_sigsafe_update
更新cached_err_log_time以及cached_syslog_time的时间。
ngx_time.h
#define ngx_msleep(ms) (void) usleep(ms * 1000)
#define ngx_sleep(s) (void) sleep(s)
睡眠函数的定义
ngx_time.c
对linux提供的time相关函数的封装。