在 src\http\ngx_http_upstream.c
static void *
ngx_http_upstream_create_main_conf(ngx_conf_t *cf)
{ngx_http_upstream_main_conf_t *umcf;umcf = ngx_pcalloc(cf->pool, sizeof(ngx_http_upstream_main_conf_t));if (umcf == NULL) {return NULL;}if (ngx_array_init(&umcf->upstreams, cf->pool, 4,sizeof(ngx_http_upstream_srv_conf_t *))!= NGX_OK){return NULL;}return umcf;
}
该函数用于创建并初始化 Nginx HTTP 模块中 upstream的主配置结构体
umcf = ngx_pcalloc(cf->pool, sizeof(ngx_http_upstream_main_conf_t));if (umcf == NULL) {return NULL;}
分配内存 作为 upstream的主配置结构体
也是函数要返回的地址
if (ngx_array_init(&umcf->upstreams, cf->pool, 4,sizeof(ngx_http_upstream_srv_conf_t *))!= NGX_OK){return NULL;}
upstreams 字段是一个数组,初始化这个数组
umcf->upstreams
是一个动态数组(ngx_array_t
),用于存储所有在 Nginx 配置文件中通过upstream
块定义的上游服务器组(如负载均衡组)的配置信息。
每个upstream
块对应一个 ngx_http_upstream_srv_conf_t 结构体指针,这些指针会被添加到umcf->upstreams
数组中。
return umcf;
返回 地址