Apache APISIX如何成为全球最活跃云原生API网关?

1.Apache APISIX 是什么?

2.主要特性

HashiCorp Vault
Zipkin
Apache SkyWalking
Consul
Nacos
Eureka
1.Lua functions:能在 APISIX 每个阶段调用 lua 函数。
2.Azure functions:能无缝整合进 Azure Serverless Function 中。作为动态上游,能将特定的 URI 请求全部代理到微软 Azure 云中。
3.Apache OpenWhisk:与 Apache OpenWhisk 集成。作为动态上游,能将特定的 URI 请求代理到你自己的 OpenWhisk 集群。

3.APISIX架构

3.1 总体架构

APISIX总体架构

3.2 技术架构

APISIX技术架构

3.3 部署架构

APISIX部署架构

4.APISIX安装

5.APISIX对象

5.1 对象

5.2 数据模型

APISIX数据模型

5.3 插件优先级

Consumer > Route > Plugin Config > Service

6.APISIX配置

1.永远不要手工修改conf/config-default.yaml文件,该文件是与 APISIX 源码强绑定。如果需要自定义任何配置,都应在config.yaml文件中完成。
2.当服务每次启动时,apisix 会根据conf/config.yaml配置和模板apisix/cli/ngx_tpl.lua自动生成新的conf/nginx.conf并自动启动服务。
1.Stand-alone模式:即本地存储方式:conf/apisix.yaml
2.etcd配置中心管理模式:即路由配置通过Admin API持久化在etcd中

7.插件扩展

7.1 External Plugin

7.2 Plugin Runner

APISIX插件机制

1.Java: https://github.com/apache/apisix-java-plugin-runner
2.Go: https://github.com/apache/apisix-go-plugin-runner
3.Python: https://github.com/apache/apisix-python-plugin-runner
4.JavaScript: https://github.com/zenozeng/apisix-javascript-plugin-runner

8.APISIX基于etcd watch机制

8.1 watch机制流程

  1. Worker进程启动时初始化ngx_timer_at(0, _automatic_fetch, obj)
function _M.new(key, opts)
    ngx_timer_at(0, _automatic_fetch, obj)
end
  1. _automatic_fetch用户回调将由Nginx核心自动调用,执行sync_data函数
local function _automatic_fetch(premature, self)
    local ok, err = xpcall(function()
        local ok, err = sync_data(self)
    end, debug.traceback)
    ngx_timer_at(0, _automatic_fetch, self)
end
  1. sync_data函数由lua-resty-etcd提供,底层调用etcd的http接口/v3/watch来同步配置

8.2 配置同步延迟分析

容器服务发现

kubelet探针

1.容器正常上线,由readinessProbe探针反馈就绪,经由控制器同步到etcd,k8s侧链路延时可以忽略不计,取决于同步到etcd的网络延迟
2.watch机制的延迟取决于apisix数据面到etcd服务之间请求/v3/watch接口的网络延迟
3.容器异常下线,延迟取决于livenessProbe探针配置的时间阈值和频次,目前配置的3s,频次3次

参考文档

展开阅读全文

页面更新:2024-02-18

标签:探针   网关   路由   抽象   容器   架构   函数   插件   加载   动态   用户   全球

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top