- 博客(3)
- 收藏
- 关注
原创 nginx 共享内存(2)
接上文,继续分享下nginx共享内存源码实现。nginx中共享内存又称为slab内存分配器,slab内存分配器按照page为单位去进行分配,page大小 为操作系统的页大小,每一个page 用ngx_slab_page_t去描述,所有的page存放在连续的内存数组中。
2024-04-06 00:05:45 936 1
原创 nginx 共享内存(1)
因为业务需要使用ngx.shared 共享内存,但是存储大内存变量时报no memory,实际显示还有内存,怀疑是小内存碎片,分配不出大内存,通过走读源码发现,nginx 是在一块连续的地址上进行内存分配,并将内存按照page大小进行操作。
2024-04-06 00:04:56 299
原创 nginx加载var变量
ssl的var变量由数组ngx_http_ssl_vars定义,在ngx_http_ssl_add_variables中调用,该函数执行时间是读取conf配置前置操作,ngx_http_ssl_add_variables主要操作就是挂载变量的get_handler和data函数,并在调用ngx.var.xxx执行get_handler函数。var_get 通过核心函数ngx_lua_ffi_var_get,调用上述注册的get handler 函数,获取变量的值。首先ngx.var变量名结构体定义如下。
2024-03-26 11:49:56 286
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人