APISIX源码解析-执行阶段【init】
ngx_lua 模块执行顺序与阶段
ngx_lua属于nginx的一部分,采用插拔式架构,插入式运行在nginx的11个步骤之中了,不过ngx_lua并不是所有阶段都会运行的;另外指令可以在http、server、server if、location、location if几个范围进行配置:
http_init()
1、根据配置文件设置dns_resolver
2、设置apisix实例id,用户可以使用有意义的自定义ID来代替实例id
local uid_file_path = prefix .. "/conf/apisix.uid"
4、启动 privileged_agent
5、配置中心初始化
存储介质:etcd 或 yaml
etcd:
获取etcd_cli get读取etcd启动时放进去的值
local key = (etcd_conf.prefix or "") .. dir_name .. "/"
yaml
只读方式打开yaml文件,获取配置并设置apisix_yaml内容