What does an API gateway do?
An API gateway is an API management tool that sits between a client and a collection of backend services.
An API gateway acts as a reverse proxy to accept all application programming interface (API) calls, aggregate the various services required to fulfill them, and return the appropriate result.
Most enterprise APIs are deployed via API gateways. It’s common for API gateways to handle common tasks that are used across a system of API services, such as user authentication, rate limiting, and statistics.
Why use an API gateway?
At its most basic, an API service accepts a remote request and returns a response. But real life is never that simple. Consider your various concerns when you host large-scale APIs.
- You want to protect your APIs from overuse and abuse, so you use an authentication service and rate limiting.
- You want to understand how people use your APIs, so you’ve added analytics and monitoring tools.
- If you have monetized APIs, you’ll want to connect to a billing system.
- You may have adopted a microservices architecture, in which case a single request could require calls to dozens of distinct applications.
- Over time you’ll add some new API services and retire others, but your clients will still want to find all your services in the same place.
Your challenge is offering your clients a simple and dependable experience in the face of all this complexity. An API gateway is a way to decouple the client interface from your backend implementation. When a client makes a request, the API gateway breaks it into multiple requests, routes them to the right places, produces a response, and keeps track of everything.
An API gateway’s role in API management
An API gateway is one part of an API management system. The API gateway intercepts all incoming requests and sends them through the API management system, which handles a variety of necessary functions.
Exactly what the API gateway does will vary from one implementation to another. Some common functions include authentication, routing, rate limiting, billing, monitoring, analytics, policies, alerts, and security.
How an API gateway supports DevOps and serverless environments
In organizations that follow a DevOps approach, developers use microservices to build and deploy apps in a fast-paced, iterative way. APIs are one of the most common ways that microservices communicate.
Additionally, modern cloud development, including the serverless model, depends on APIs for provisioning infrastructure. You can deploy serverless functions and manage them using an API gateway.
In general, as integration and interconnectivity become more important, so do APIs. And as API complexity increases and usage grows, so does the value of an API gateway.
Red Hat 3scale API Management makes it easy to share, secure, distribute, control, and monetize your APIs. It is an infrastructure platform built for performance, customer control, and future growth. You can place 3scale components on-premise, in the cloud, or on any combination of the two.
Red Hat Fuse is a distributed integration platform with standalone, cloud, and iPaaS deployment options. Using Fuse, integration experts, application developers, and business users can independently develop connected solutions in the environment of their choosing.
Red Hat Integration
Streamline integration development with a comprehensive set of integration and messaging technologies to connect applications and data across hybrid infrastructures. Red Hat Integration is an agile, distributed, containerized, and API-centric solution.
Red Hat Runtimes
Accelerate application development and delivery with a set of products, tools, and components for developing and maintaining cloud-native applications. Red Hat Runtimes offers lightweight runtimes and frameworks for highly-distributed cloud architectures, such as microservices.
Red Hat Process Automation
Adapt quickly to changing business needs with a set of products for intelligently automating business decisions and processes. Enforce business policies and procedures, automate business operations, and measure the results of business activities across heterogeneous environments.