Apisix 动态刷新路由实现源码分析
2022-10-20 15:51:44 0 举报
流程描述了apisix动态刷新路由的流程
作者其他创作
大纲/内容
判断缓存的路由版本和最新的版本是否相同,不同说明路由有变化
通过Admin Api接口修改配置
etcd 的 watch 机制允许客户端监控某个 key 的变动
初始化路由
重新构建路由基数树
匹配路由
请求
路由是否变化
http_init_worker阶段初始化定时器【require(\"apisix.timers\").init_worker()】
http_access_phase阶段
定时器执行_automatic_fetch函数
循环执行
上游服务
sync_data函数接收etcd的通知更新本地数据
如果路由变化了,路由版本+1
否
某个值发生变化之后,通知客户端
用户
通过 gRPC 接口修改 etcd 中相应 key 的内容
0 条评论
下一页