tags: 微服务网关,api网关,kong,健康检查,负载均衡
grammar_cjkRuby: true
为什么是 kong?
- 见名其知意
kong 不是“空”的拼音,是英文,翻译过来是“港”。什么意思,意思是kong是个港口,用来停船的。我想大概寓意是kong是一个挂靠服务的港口。说简单点就是服务的集中出入口。
接下来看张图:
kong使用前后项目结构 - 剥离基础服务
使用kong之前每个服务中都可能包含一些通用的基础功能,认证、健康检查、断路器、限流、监控、日志、转换...... 架构中有了kong这些公用的基础功能就不用重复出现在不同的项目中了。这些基础服务通过可配置是否启用 - 热插拔的扩展
事实上,拥有以上功能的开源项目多了去了。为啥要选kong了?kong的优势在于其强大的可热插拔的插件扩展功能
Kong是一个在Nginx中运行的Lua应用程序,并且可以通过lua-nginx模块实现。Kong不是用这个模块编译Nginx,而是与OpenResty一起发布,OpenResty已经包含了lua-nginx-module。OpenResty 不是 Nginx的分支,而是一组扩展其功能的模块。
这为可插拔架构奠定了基础,可以在运行时启用和执行Lua脚本(称为“插件”)。因此,我们认为Kong是微服务架构的典范:它的核
心是实现数据库抽象,路由和插件管理。插件可以存在于单独的代码库中,并且可以在几行代码中注入到请求生命周期的任何位置。
这是摘自官网介绍的一段。核心就是kong可以简单的通过lua脚本实现扩展,热插拔。
学习路径
既然选用kong就要从他的优势开始,接下来将通过建设服务监控的过程来带大家熟悉服务网关kong。
- kong 认识
- kong docker安装(快速使用)
- kong centos安装(深入了了解)
- kong ui 可视化管理系统KONGA
- 结合ui介绍kong 核心概念
- 简单配置一个服务demo
- kong 健康检查与断路由
- kong 插件-服务监控
- kong 插件-链路追踪
网友评论