1.kong 网关插件快速开发指南
kong 网关插件快速开发指南
通过使用kong网关插件,源码开发流程变得简单明了且高效。源码kong插件项目主要包含三个文件:handler.lua负责处理插件逻辑,源码schema.lua定义配置文件,源码而rockspec文件用于插件安装。源码逻辑处理代码根据openresty的源码比较源码 采集 商品不同处理阶段分为不同函数,根据插件功能只需在相应函数内添加自定义业务逻辑。源码
以开发一个简单的源码灰度发布流量分发插件为例,其功能仅是源码根据http request头中的Authorization值,将流量分发至不同后端服务器。源码该插件配置包含两个选项:pattern和upstream。源码如果Authorization值匹配pattern,源码请求将代理至相应upstream。源码prismplayer 源码
首先,源码为插件命名为“huidu”,源码修改模版项目目录为“huidu”。接着,修改schema.lua添加配置代码,然后在handler.lua中添加处理逻辑。-8源码由于huidu插件逻辑只需在access阶段执行,可以移除多余注释和代码。至此,代码开发阶段完成。
进行插件安装调试。假设已搭建本地开发环境,源码exe手动指定目录安装插件。修改kong.conf文件配置插件,保存后启动kong。在启动日志中确认加载了插件。通过konga界面配置插件,创建服务并安装插件。raiderz 源码配置后,数据将保存在kong后端数据库的plugins表中。进行测试以验证插件效果。
在测试阶段,若请求匹配插件配置,响应应符合预期;若不匹配或代码有误,则流量将走服务本身配置的upstream。配置后的数据保存在数据库中。
在正式环境部署时,通过luarocks安装插件。编辑rockspec文件修改配置,注意查看本地和linux安装路径差异。安装完成后,运行kong restart生效。开发完成后,建议参考官方插件开发文档和kong自带插件库源代码,优化插件功能。
基于此流程,简单功能的插件开发效率较高,可实现一天一个。开发时,应避免功能逻辑过于复杂,保持简单实用。示例插件代码和官方开发文档可参考指定链接。