微服务 API 网关 Kong 单元测试中文文档

原文链接: https://docs.konghq.com/1.0.x/plugin-development/tests/
(如有翻译的不准确或错误之处,欢迎留言指出)
集成测试:https://docs.konghq.com/1.0.x/plugin-development/tests/#write-integration-tests

阅读全文

微服务 API 网关 Kong 命令行中文文档

原文链接: https://docs.konghq.com/1.0.x/cli/
(如有翻译的不准确或错误之处,欢迎留言指出)

阅读全文

微服务 API 网关 Kong File Log 插件中文文档

原文链接: https://docs.konghq.com/hub/kong-inc/file-log/#parameters
(如有翻译的不准确或错误之处,欢迎留言指出)
将请求和响应数据写入磁盘上的日志文件中。不建议在生产中使用此插件,在生产环境下,最好使用另一个日志插件,例如syslog。由于系统限制,此插件使用阻塞文件i/o,将会损害性能,因此是Kong安装的反面模式。
注意:此插件的功能与0.10.2之前的Kong版本捆绑在一起,与此处记录的不同。
有关详细信息,请参阅CHANGELOG

阅读全文

微服务 API 网关 Kong 1.0.0 升级指南

原文地址:https://docs.konghq.com/1.0.x/upgrading/#2-deprecation-notices (不能保证所有的翻译都是准确无误的,所有如有翻译的不准确或错误之处,请一定记得查看原文,并欢迎留言指出)。
注意:以下是1.0.x的升级指南。
如果您要升级到Kong的早期版本,请阅读Kong repo中的UPGRADE.md文件。
本指南将告知您在升级时应了解的重大更改,并指导您完成正确的步骤,以便在不同的升级方案中获得不需要停止服务的迁移。

阅读全文

你需要好好对待你的牙齿

从去年到今年,断断续续的把自己的牙齿整治了一番,拔掉两颗智齿,洗了两次牙,跟牙科医生交流了很多,了解了很多关于牙齿的知识,结论就是:你的牙齿可以一直使用下去,哪怕你已经七老八十。可能跟请我们大家多数人的印象不太一样,觉得人老了,牙齿就必须掉的七零八落,然而事实是,如果你对自己的牙齿正视起来,并且好好保护它,它将让你七八十岁还能嚼的动爆米花。

阅读全文

微服务 API 网关 Kong CORS 插件中文文档

原文地址:https://docs.konghq.com/hub/kong-inc/cors/ (不能保证所有的翻译都是准确无误的,所有如有翻译的不准确或错误之处,请一定记得查看原文,并欢迎留言指出)。
通过启用此插件,轻松将跨源资源共享(CORS)添加到 Service, Route。

阅读全文

微服务 API 网关 Kong 插件开发添加自定义配置文件

由于在 Kong 的插件开发中,需要添加一些自定义的配置文件,而且是一些插件公用的配置,但是又不方便都写在插件的 schema.lua 中,那么就考虑引入常规的配置文件,这里以.env文件为例,写一下添加和使用过程。
首先需要了解的是,Kong 的插件使用了一个叫 Classic 的 class 机制。所有的插件都是从 base_plugin.lua 基类上继承而来。base_plugin.lua 定义了插件在各个阶段被执行的方法名:,所以我们就从这里入手,以添加redis配置信息为例。

阅读全文

微服务 API 网关 Kong 插件开发套件中文文档

原文地址:https://docs.konghq.com/1.0.x/pdk/ (不能保证所有的翻译都是准确无误的,所有如有翻译的不准确或错误之处,请一定记得查看原文,并欢迎留言指出)。
插件开发工具包 Plugin Development Kit(或“PDK”)是一组Lua函数和变量,插件可以使用这些函数和变量来实现自己的逻辑。PDK是一个语义版本的组件,最初在Kong 0.14.0中发布。PDK将保证从1.0.0版本开始向前兼容。

阅读全文

微服务 API 网关 Kong 配置文件中文详解

原文地址:https://docs.konghq.com/1.0.x/configuration/ (不能保证所有的翻译都是准确无误的,所有如有翻译的不准确或错误之处,请一定记得查看原文,并欢迎留言指出)。

阅读全文

微服务 API 网关 Kong Route 中文文档

Route 路由

路由实体定义规则以匹配客户端请求。每个Route与一个服务相关联,一个服务可能有多个与之关联的路由。匹配给定路由的每个请求都将代理到其关联的服务。
Routes 和 Services 的组合(以及它们之间的关注点分离)提供了一种强大的路由机制,通过它可以在 Kong 中定义细粒度的入口点,从而导致基础架构的不同上游服务。

阅读全文

微服务 API 网关 Kong Service 中文文档

Service 服务

顾名思义,服务实体是每个上游服务的抽象。举个例子,services 可以是一个数据转换微服务,一个计费api等等。
Service 的主要属性是其URL(Kong应该将流量代理到的地方),可以设置为单个字符串,也可以单独指定其protocol, host, portpath
Service 与 router 相关联(一个 Service 可以有许多与之关联的 router)。router 是Kong的入口点,并定义匹配客户端请求的规则。一旦 router 匹配,Kong就会将请求代理到其关联的服务。有关Kong代理流量的详细说明,请参阅代理参考

阅读全文

微服务 API 网关 Kong 1.0 GA 版本正式发布(更新详情)

原文地址:https://github.com/Kong/kong/blob/master/CHANGELOG.md#100 (如有翻译的不准确或错误之处,欢迎留言指出)。
这个是一个非常重要的版本,引入了对Service Mesh和Stream Routing支持的新功能,以及新的迁移框架,它还包括插件开发工具包(Plugin Development Kit)的1.0.0版本,它包含大量其他功能和修复,如下所示。此外,Kong 1.0中包含的所有插件都更新为使用PDK 1.0版。
像往常一样,主要版本升级需要数据库迁移和Nginx配置文件的更改(如果您自定义了默认模板),在计划升级Kong集群之前,请花几分钟时间阅读1.0升级指南,了解有关更改和迁移的更多详细信息。
作为主要版本,在Kong 0.x中标记为已弃用的所有实体和概念现已在Kong 1.0中删除,已弃用的功能将保留在Kong 0.15中,Kong 0.x系列的最终版本,同时发布到Kong 1.0。

阅读全文

Openresty 第三方库 Lua-resty-http 使用教程

lua_resty_http是一个第三方 openresty 库,基于 Openresty/ngx_lua 的HTTP客户端,支持POST方法上传数据.
刚好项目中用到需要从网关中发起请求,于是就用到这个库,把使用方式在这里分享一下。

安装第三方库lua_resty_http

第一步

首先找到项目地址:https://github.com/pintsized/lua-resty-http

阅读全文

Kong 开发笔记&相关文章

在学习和开发 Nginx & OpenResty & Lua % Kong 的途中,遇到的一些教程或者文章,还有一些注意事项,在这里集中分享一下,此文章会不定期更新,如果有好的有关的教程或者文章,欢迎留言分享。
如果有遇到问题,不妨可以先查看一下下面的文章,或许会能找到一些答案。

阅读全文

微服务 API 网关 Kong JWT 插件中文文档

原文链接: https://docs.konghq.com/hub/kong-inc/jwt/
(如有翻译的不准确或错误之处,欢迎留言指出)
验证包含HS256或RS256签名JSON Web令牌的请求(如RFC 7519中所述)。每个消费者都将拥有JWT凭证(公钥和密钥),这些凭证必须用于签署其JWT。然后可以通过令牌传递如下:

阅读全文

Nginx API for Lua 汇总

阅读全文

Docker Kong 中文文档

原文链接: https://docs.docker-cn.com/samples/kong/
(如有翻译的不准确或错误之处,欢迎留言指出)

阅读全文

有状态(SESSION)和无状态(JWT)登录验证

最近公司在做系统设计的时候提到了这么一个讨论,就是有状态的登录验证和无状态的登录验证,至于这两者的利弊有哪些,具体如何做选择,可以把两者的特点来做一些对比。其实这两者共同的目的就是解决http协议的无状态特性,标示客户端会话用户。不论用这两者哪种方式,token 和 session 都可能会被窃取从而发生CSRF攻击,全站 HTTPS 是必不可少。google一下发现关于这两者的讨论都不少,在此总结一番,有其他意见的欢迎留言讨论。

阅读全文

Tyk 初探(安装以及使用)

Tyk介绍

阅读全文

Kong初探 (插件开发以及使用)

Kong已有插件介绍

Kong Plugins中列出了已有的所有插件,有些插件只能在企业版使用,有些插件是社区成员开发的,大部分是Kong公司开发,并集成到社区版中。下面是社区版集成的、Kong公司维护的插件(2018-09-30 14:33:03):

阅读全文