API Gateway com Ocelot

Thiago Loureiro
2 min readNov 9, 2018

--

Open Source .NET Core API Gateway

Ocelot é um API Gateway para plataforma .NET. Este projeto destina-se a pessoas que usam o .NET / Core executando uma arquitetura orientada a micro serviços / serviços que precisam de um ponto de entrada unificado em seu sistema. No entanto, ele funcionará com qualquer coisa que fale HTTP e seja executado em qualquer plataforma suportada pelo ASP.NET Core.

API Gateway

API Gateway é uma interface em que recebe chamadas e redireciona para os serviços internos. Basicamente ele é utilizado para os seguintes fins:

  • Filtro
  • Roteamento de Tráfego
  • Mecanismo de Segurança
  • Expor apenas um endpoint
API Gateway

API Gateway Pattern

Ao construir um sistema grande e complexo usando a arquitetura de microsserviços, com vários aplicativos clientes, uma boa abordagem a considerar é o API Gateway Pattern.

Esse padrão fornece um único ponto de entrada para grupo(s) de microsserviços. Uma variação do API Gateway Pattern também é conhecida como “backend for frontend” (BFF) porque você pode criar vários Gateways de API, dependendo das diferentes necessidades de cada aplicativo cliente.

Portanto, o API Gateway Pattern fica entre os aplicativos clientes e os microsserviços. Ele age como um proxy reverso, roteando solicitações de clientes para serviços.

Ele também pode fornecer recursos adicionais de cross-cutting, como autenticação, terminação SSL e cache.

O Ocelot possui as seguintes features:

  • Routing
  • Request Aggregation
  • Service Discovery with Consul & Eureka
  • Service Fabric
  • WebSockets
  • Authentication
  • Authorisation
  • Rate Limiting
  • Caching
  • Retry policies / QoS
  • Load Balancing
  • Logging / Tracing / Correlation
  • Headers / Query String / Claims Transformation
  • Custom Middleware / Delegating Handlers
  • Configuration / Administration REST API
  • Platform / Cloud Agnostic

No próximo artigo irei detalhar algumas funções, mostrar passo a passo a criação do projeto, instalação dos pacotes Nuget, Service Discovery com Consul no Gateway e serviços, Load Balance e autenticação com JWT.

Fiquem ligados!

--

--