* 戳上方蓝字“开源先锋”关注我
推荐阅读:
《9.5K star!一个强大的开源低代码平台,可供开发人员构建内部工具!》
大家新年好,我是开源君!
今天给大家介绍一下Kong这个开源项目。
Kong是由Mashape开发并于2015年开源的API网关。它基于OpenResty(Nginx + Lua模块)和Apache Cassandra/PostgreSQL构建,提供易于使用的RESTful API来操作和配置API管理系统。
Kong能够水平扩展,通过前置的负载均衡配置把请求均匀地分发到各个Server,应对大量网络请求。
性能特色
Kong的性能特色主要体现在其可扩展性和模块化上。
它可以通过简单地添加更多服务器来轻松实现横向扩展,这意味着平台可以在较低负载的情况下处理任何请求。
Kong的扩展性主要通过插件机制实现,已集成了众多插件,如密钥认证、CORS、文件日志、API请求限流等。
此外,Kong可以在任何基础架构上运行,无论是云环境还是内部网络。
如何快速使用
要在Docker环境中部署Kong,可以按照以下步骤操作:
1、构建Kong的容器网络:
docker network create kong-net
2、搭建数据库环境(以PostgreSQL为例):
docker run -d --name kong-database
--network=kong-net
-p 5432:5432
-e "POSTGRES_USER=kong"
-e "POSTGRES_DB=kong"
-e "POSTGRES_PASSWORD=kong"
postgres:9.6
3、初始化或迁移数据库:
docker run --rm
--network=kong-net
-e "KONG_DATABASE=postgres"
-e "KONG_PG_HOST=kong-database"
-e "KONG_PG_PASSWORD=kong"
kong:1.5.1 kong migrations bootstrap
4、启动Kong容器:
docker run -d --name kong
--network=kong-net
-e "KONG_DATABASE=postgres"
-e "KONG_PG_HOST=kong-database"
-e "KONG_PG_PASSWORD=kong"
-p 8000:8000
-p 8443:8443
-p 8001:8001
-p 8444:8444
kong:1.5.1
完成这些步骤后,Kong就已经安装并运行起来了。我们可以通过访问 http://localhost:8001/
来查看Kong是否运行正常。
Kong作为一个API网关,不仅提供了强大的API管理功能,还具备了集群水平扩展的能力,从而提升整体吞吐量。
它基于OpenResty,可以在现有的基础上进行扩展,实现更复杂的特性。
虽然Kong默认缺少一些特性,如API级别的超时、重试、fallback策略等,但这些都可以通过Lua语言进行定制和扩展。
总的来说,Kong是一个功能丰富、适合企业级应用的API网关解决方案。
关于项目更多细节,感兴趣的自行去项目地址查看。
项目地址:
https://github.com/Kong/kong
原文始发于微信公众号(开源先锋):36.9K star!又一款优雅高效管理 API 的项目!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/205350.html