- DB-Less模式下可以使用request-transformer、response-transformer、correlation-Id、rate-limiting插件;插件的配置方式见插件的配置和测试。
Request Transformer
用途
这个插件是用来预处理我们的请求,然后把预处理后的请求转发给后端节点。
插件的执行顺序,remove->rename->replace->add->append
配置
request-transformer,以add headers 和 replace为例,配置kong.yml文件,文件配置如下。配置完重新restart kong使得配置生效。
Add
测试
这边通过kong向服务器发送测试报文,使用tcpdump 监听请求报文。
Add的测试发现http的header中增加了自定义的other-header;
response-transformer
用途
这个插件是用来预处理后端节点的返回的, 然后把处理后的返回发送给客户端。
配置
response-transformer,以add headers 和 replace为例,配置kong.yml文件,文件配置如下。配置完重新restart kong使得配置生效。
3.2.3测试
如下图所示,返回的报文中增加了other-header:header02。
correlation-Id
用途
使用通过HTTP头传输的惟一ID将请求和响应关联起来。
配置
为了验证插件生效,可将echo_downstream置成true。
测试
发送请求到kong服务器上,发现返回报文中有Kong-Request-ID, 则证明correlation-Id生效。
rate-limiting
用途
rate-limiting是用来限流的插件。
配置
测试
使用JMeter模拟并发场景,设置的线程数为20,向kong发送请求。查看结果树。发现response message返回 Too Many Requests,即插件生效。