如何设计 API?看这一篇就够了( 二 )


Kong:是在 Nginx 中运行的 Lua 程序 。得益于 Nginx 的性能优势 , Kong 相比于其它的开源 API 网关来说,性能方面是最好的 。由于大中型公司对于 Nginx 运维能力都比较强,所以选择 Kong 作为 API 网关 , 无论是在性能还是在运维的把控力上,都是比较好的选择 。
Envoy:是一个开源的高性能代理和通信中间件,专为云原生应用程序设计 。它由 Lyft 开发并于 2017年成为 Cloud Native Computing Foundation(CNCF)的毕业项目之一 。虽然 Envoy 本身是用 C++ 编写的,但它可以与任何语言和框架进行集成,包括 .NET Core 。
网关的选择需要能解决当前面临的问题 。关于各种网关的使用方式,以及优缺点的对比,后面再进行详细介绍 。
最后不管是 API 的设计还是代码架构的设计,原则其实都差不多,要能够松耦合、易扩展、在满足现有需求的基础上,再多往前想一步 , 避免过度设计 。




推荐阅读