nginx中很多地方都需要用到时间戳信息,但是如果每一次都直接调用系统函数来获取,虽然可以保证时间的精确性,但是却会严重降低系统的性能。考虑到Nginx中很多地方用到的时间戳并不需要十分精确,从系统性能方面考虑,nginx采用缓存时间戳的方法来处理。
1. ngx_time_t数据结构
ngx_time_t
用于当前的时间:
2. 相关函数声明
3. 相关全局变量声明
-
ngx_cached_time: 当前nginx所缓存的时间
-
ngx_time(): 获取当前Nginx缓存时间的秒数(精度为秒级)
-
ngx_timeofday(): 获取当前nginx缓存的时间
-
ngx_cached_err_log_time: 当前缓存的错误日志时间
-
ngx_cached_http_time: 当前缓存的http时间
-
ngx_cached_http_log_time: 当前缓存的http log时间
-
ngx_cached_ttp_log_iso8601: 当前缓存的http log的ios8601格式的时间
-
ngx_cached_syslog_time: 当前缓存的syslog格式的时间
-
ngx_current_msec: 当前时间的毫秒数。只用作nginx中的相对时间的计算,因为msec
所能保存的时间范围较小。
[参看]