API(网关)提供的反向代理和Service Fabric有啥区别?

Posted

技术标签:

【中文标题】API(网关)提供的反向代理和Service Fabric有啥区别?【英文标题】:What is the difference between reverse proxy provided by APIM (gateway) and Service fabric?API(网关)提供的反向代理和Service Fabric有什么区别? 【发布时间】:2020-06-12 08:37:44 【问题描述】:

APIM(API网关)提供的反向代理和Service Fabric有什么区别?

我读到APIM提供的API网关提供反向代理。

此外,服务结构还提供网关(因此反向代理)。

【问题讨论】:

【参考方案1】:

API 管理实例旨在允许您管理对托管在 Azure 或本地环境中的 API、函数等的外部访问,只要您确保 Azure 租户和本地环境之间的连接。 Service Fabric 网关服务和反向代理服务旨在专门管理 Service Fabric 群集的通信。因此,通过使用 Service Fabric 反向代理,网关服务可以拦截流量并将其转发到 Service Fabric 反向代理中的相关服务类型。然后,代理能够处理查找相关容器位置和地址以转发传入流量的复杂性。

因此,总而言之,API 管理旨在为托管在 Azure 中且有外部用户或应用程序访问它的大多数应用程序管理访问控制、应用策略等。 SF 网关和反向代理专用于 Service Fabric,但这些服务不管理访问控制。这在您的访问控制列表中进行管理,请参阅this article 了解更多信息。

最后但并非最不重要的一点是,如果您的 Service Fabric 应用程序有外部用户访问它,我建议您考虑将 API 管理与您的 Service Fabric 集群集成,请参阅更多here。

【讨论】:

但是反向代理是由 api 网关提供的(作为 APIM 的一部分)。那么这与服务结构提供的保留代理有什么不同? API 管理并非设计为简单的负载均衡器。它具有强大的策略引擎以及向客户提供 API 所需的功能。话虽如此,您可以通过利用可用的策略在您的 API 管理上拥有反向代理,例如使用 set-backend-servicerewrite-uri 策略。但是,如果您需要为您的 API 设置反向代理,我建议您使用 Azure 应用程序网关,因为您拥有所有这些功能以及更多开箱即用的功能。 看看this article 这样你就明白我的意思了。你有一个解决方案的架构图。但是,最重要的是,这完全取决于您的要求和需要。

以上是关于API(网关)提供的反向代理和Service Fabric有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Spring 云网关和 Nginx 作为反向代理的网关超时

如何在API网关中为反向代理配置AWS EC2实例

Service Fabric 反向代理 - 404 - FABRIC_E_SERVICE_DOES_NOT_EXIST

.NET 反向代理-YARP 部署Https(SSL)

使用 Azure Service Fabric 部署的微服务的 API 网关/代理模式

Yarp 反向代理 - 响应 502 错误网关