Skip to content

Gateway Pattern

Aron Heesakkers edited this page Jun 12, 2021 · 2 revisions

When to use this pattern

Use this pattern when:

  • A client needs to consume multiple services that can be accessed behind a gateway.
  • You wish to simplify client applications by using a single endpoint.
  • You need to route requests from externally addressable endpoints to internal virtual endpoints, such as exposing ports on a VM to cluster * virtual IP addresses.
  • This pattern may not be suitable when you have a simple application that uses only one or two services.

Associated Patterns

Other design patterns closely related to the gateway pattern.

Gateway Routing Pattern

Route requests to multiple services using a single endpoint. This pattern is useful when you wish to expose multiple services on a single endpoint and route to the appropriate service based on the request.

Gateway Aggregation Pattern

Use a gateway to aggregate multiple individual requests into a single request. This pattern is useful when a client must make multiple calls to different backend systems to perform an operation.

Backend for Frontend

Create separate backend services to be consumed by specific frontend applications or interfaces. This pattern is useful when you want to avoid customizing a single backend for multiple interfaces. This pattern was first described by Sam Newman.

Gateway Offloading

Sources

Clone this wiki locally