0

What is the difference between reverse proxy provided by APIM (API gateway) and Service fabric?

I am reading that the API gateway provided by APIM provides for reverse proxy.

enter image description here

Also, the service fabric also provides gateway (thus reverse proxy).

enter image description here enter image description here enter image description here

variable
  • 8,262
  • 9
  • 95
  • 215

1 Answers1

0

The API Management instance is meant to allow you to manage external access to your APIs, Functions, etc. hosted on Azure or on-premises environment, as long as you ensure connectivity between your Azure tenancy and your on-premises environment. The Service Fabric Gateway Service and Reverse Proxy Service are meant to manage exclusively the communication of your Service Fabric cluster. So, by using the Service Fabric Reverse Proxy, it is possible for a gateway service to intercept the traffic and forward it to the relevant service type in Service Fabric Reverse Proxy. Then the proxy is able to handle the complexity in finding the relevant container location and address to forward the incoming traffic.

So, to summarize, the API Management is meant to manage access control, apply policies and more for most of your applications hosted in Azure that have external users or apps accessing it. And the SF Gateway and Reverse Proxy is dedicated to Service Fabric, but these services do not manage access control. That's managed on your Access Control List, please see this article for more information.

Last, but not least, in case your service fabric application has external users accessing it, i would recommend you to consider to integrate API Management with your Service Fabric cluster, see more here.

Hugo Barona
  • 1,303
  • 9
  • 21
  • But reverse proxy is provided by the api gateway (as part of APIM). So is that different from reserve proxy provided by service fabric? – variable Feb 29 '20 at 01:44
  • API Management is not designed to be a simple load balancer. It has a powerful policy engine along with features necessary for providing your APIs to your customers. That being said, you can have a reverse proxy on your API Management by leveraging the policies available, and e.g. using the *set-backend-service* and *rewrite-uri* policies. But, in case you require to set up a reverse proxy for your APIs, i would recommend you to use Azure Application Gateway, since you have all these features and more out-of-the-box. – Hugo Barona Feb 29 '20 at 08:32
  • Have a look at [this article](https://medium.com/azure-architects/azure-api-management-and-application-gateway-integration-a31fde80f3db) so you can understand what I mean. You have there an architecture diagram of the solution. But, most importantly, it all depends on the requirements and what you need. – Hugo Barona Feb 29 '20 at 08:35