Amazon Web Service – API 网关简介
API 网关是一种管理工具,充当用户和微服务之间的接口。 Amazon API Gateway是一项AWS 服务,允许用户创建、发布、保护、维护和监控任何规模的 API。您可以在自己的客户端应用程序中创建 API,也可以将它们提供给第三方开发人员。它是无服务器的。它支持 HTTP、WebSocket 和 REST API。
关键术语:
以下是您需要熟悉的一些关键字,以便更好地理解文章:
- HTTP(超文本传输协议)API是一种应用层协议,有助于通过万维网进行通信以获取数据。
- REST (Representational State Transfer ) API采用 HTTP 标准对数据执行GET 、 POST 、 PUT 、 PATCH和DELETE操作。
- WebSocket是一种设备通信协议,它通过单个 TCP 提供点对点系统通信通道。它支持客户端和服务器之间的有状态的全双工通信。
API Gateway处理以下开发方面:
- 交通管理
- CORS 支持
- 授权和访问控制
- Throttling(限制用户在一定时期内可以发出的 API 请求数量的过程)
- 监控
- API版本管理
AWS API 网关的成本
您只需为使用付费,即您为收到的 API 调用和数据传输量付费。可选数据缓存按小时收费,具体取决于您选择的缓存大小。
亚马逊还提供长达 12 个月的免费套餐服务,其中包括:
- 100 万次 HTTP API 调用
- 100 万次 REST API 调用
- 100 万条消息
- 每月 750,000 分钟的连接时间
请查看下表了解 Amazon API Gateway 的标准定价或访问此页面: Pricing for the API Calls APIs No. of requests per month Price(per million) HTTP First 300 million $1.00 300+ million $0.90 REST First 333 million $3.50 Next 667 million $2.80 Next 19 billion $2.38 Over 20 billion $1.51 WebSocket First 1 billion $1.00 Over 1 billion $0.80
API网关架构
下图显示了内置的 API Amazon API Gateway 如何为客户提供集成且一致的开发人员体验以构建 AWS 无服务器应用程序。它充当应用程序访问后端服务数据的网关,例如在 Amazon Elastic Compute Cloud (Amazon EC2)、AWS Lambda、任何 Web 应用程序等上运行的代码。
AWS API Gateway 的整个架构由以下关键组件组成:
- Amazon API Gateway:用于创建、发布、保护、维护和监控 API。
- API 网关缓存:用户可以启用 API 缓存来缓存他们的端点响应,这可以减少对端点的调用次数,也可以改善 API 请求的延迟。
- Amazon Cloud Watch:它是一种监控和可观察性服务。它收集监控和运营数据,并使用自动化仪表板将其可视化,从而使用户可以直观地监控对其服务的调用。
使用 Amazon API 网关:
可以通过以下方式访问 Amazon API Gateway:
- AWS 管理控制台
- AWS 开发工具包、API Gateway V1 和 V2 API
- AWS 命令行界面
- 适用于 Windows PowerShell 的 AWS 工具
例如,如果你想创建一个 HTTP API,首先你必须创建一个 lambda函数,而要创建一个 lambda函数,你必须使用 AWS 的 lambda 服务,然后你必须使用 API Gateways 创建 HTTP API,然后测试 API。
让我们看看 AWS 管理控制台上的 AWS API 网关。登录到您的 AWS 账户。一旦您被重定向到 AWS 管理控制台。点击“服务”。在搜索栏上搜索 API 网关。参考给定的图像:
使用 API 网关的好处:
以下是使用 API Gateway 的好处:
- 它有助于高效的 API 开发。用户可以通过 API Gateway 同时运行同一个 API 的多个版本,允许用户快速迭代、测试和发布新版本。
- 它为 API 请求和响应提供了尽可能低的延迟(数据将网络中的一个点传递到另一个点所花费的时间)。
- 用户可以使用 API Gateway 仪表板轻松监控性能和信息。
- 它可以大规模节省成本,即随着 AWS 账户中每个区域的 API 使用量增加,用户可以降低成本。
- 它通过使用 AWS Identity、Access Management (IAM) 和 Amazon Cognito 提供对 API 的访问来提供灵活的安全控制。