fbpx

AWS API Gateway

It  is an AWS application service that supports creating, hosting, deploying, and managing a RESTful application programming interface to expose backend HTTP endpoints, AWS Lambda functions, and other AWS services such Amazon DynamoDB, Amazon S3 and Amazon Kinesis.

How does API Gateway Works?

API Gateway acts as a “bridge” or “entry point” for applications to access data, business logic or functionality from the back-end services such as applications running on Amazon Elastic Compute Cloud (Amazon EC2), code running on AWS Lambda, other AWS services or any web application and authenticate, manage and monitor API calls leading to better performance, scalability, availability with low maintenance and cost.

Hence, AWS API Gateway is a fully managed service that makes it easy for developers to publish, maintain, monitor, and secure REST and WebSocket APIs at any scale.

API Gateway Concept

  • API Gateway API: It is a collection of resources and methods that are integrated with backend HTTP endpoints, Lambda functions, or other AWS services. The collection can be deployed in one or more stages. The API consists of resources that form the API structure. Each API resource can expose one or more API methods that must have unique HTTP verbs.
  • API Deployment: In order to publish an API, an API deployment needs to be created and associated with one or more stages to be available for clients to use. On redeploying an API, either an existing stage can be updated, or a new one can be created. This is useful in versioning of the API.
  • API Stage: An API stage is a logical reference to a lifecycle state of the REST or WebSocket API. For example, dev stage, beta stage, test stage etc.
  • API Endpoint: An endpoint is a hostname for an API in API Gateway that is deployed to a specific region. The hostname is of the form {api-id}.execute-api.{region}.amazonaws.com. There are various types of API endpoints supported by the AWS API Gateway:
  1. Edge-optimized API endpoint
  2. Private API endpoint
  3. Regional API endpoint

Features of Amazon API Gateway

  • API Throttling: In order to handle the API call traffic, API throttling can be configured to limit the API calls per hour or per day. This prevents attacks and helps in maintaining the performance during unexpected spikes.
  • API Caching: The API Gateway caches the endpoint responses(calls) and avoids redundant backend requests. This enhances the performance of the API by improving the latency of requests to the API.
  • Streamline API Development: Amazon API Gateway can run multiple versions of the same API simultaneously and allows to quickly iterate, test, release and deploy new versions while existing applications use previous versions of the API.

Pricing of Amazon API Gateway

With Amazon API Gateway, deploying an API doesn’t cost anything. You pay only when your API is in use. You are charged for the calls made to your APIs and the amount of data transferred out. There are no minimum fees or upfront commitments.

Advantage of API Gateway

  • Efficient API Development: An API Gateway creates REST APIs that are HTTP based, implements standard HTTP methods such as GET, POST, PUT, PATCH and DELETE and enables stateless client-server communication.
  • Scalability: It deals with and manages all the functions involved in processing up to hundreds and thousands of concurrent API calls, including traffic management, authorization and access control. It offers low latency or global API requests when integrated with AWS CloudFront, and edge locations.
  • Easy Monitoring: Monitor calls to the services and observes performance metrics and information on API calls, data latency, and error rates from the API Gateway dashboard and debug logs from Amazon CloudWatch.
  • Serverless APIs: Create REST APIs using API Gateway that mobile and web applications can use to call publicly available AWS services through code running in AWS Lambda.
  • Flexible Security Controls: It integrates with tools such as AWS IAM and Amazon Cognito to authorize access to APIs.
Menu