网关架构设计最佳实践

Posted

技术标签:

【中文标题】网关架构设计最佳实践【英文标题】:Gateway architecture design best practices 【发布时间】:2019-06-07 23:10:08 【问题描述】:

我正在构建一个网关,作为一组下游端点的代理。

其中一个要求是能够对使用 jwt 传入的每个请求进行身份验证/授权(其中一个下游服务将负责处理)

我正在考虑为这个项目使用 expressjs。

如果我的架构要求我每次需要通过网关公开下游端点时都发送一个 pr,那有什么问题吗?

【问题讨论】:

【参考方案1】:

如果我的架构要求我发送 pr 是否有问题? 每次我需要通过网关公开一个下游端点?

您可以通过定义端点和其他所需配置的配置文件来实现这一点,因此您实际上不必接触代码。

但一般来说,您想要实现自己的网关的原因是什么?有许多现有的解决方案可能会为您节省大量时间。例如查看Kong、nginx 或KrakenD。

其中每一个的好处是,除了身份验证之外,它们还支持监控、缓存、过滤、限制等功能,这些功能在大多数生产环境中最终都会作为需求出现。

【讨论】:

感谢@oswin,我想创建自己的网关的原因是因为我的身份验证流程是自定义的。网关后面的服务之一充当身份验证服务。我想对每个请求进行身份验证通过网关的中间件将在后台调用 authService.. 那种东西。

以上是关于网关架构设计最佳实践的主要内容,如果未能解决你的问题,请参考以下文章

大规模 Node.js 网关架构设计与工程实践

大规模 Node.js 网关架构设计与工程实践

云存储架构框架设计 | 最佳实践

海量Node.js网关的架构设计与工程实践!

海尔电商峰值系统架构设计最佳实践

容器云平台网络架构设计及优化 | 最佳实践