微服务开发
在用户系统为微服务架构开发的情况下,微服务架构带来如下状况:
大量的微服务模块。
每个模块均提供自身的 API 服务接口。
每个模块均提供自身服务的地址或 负载均衡 CLB。
某些 API 调用存在前后关联。
某些情况需对多个 API 进行调用来获取最终数据。
API 的调用规范、命名方式、参数设计不一定统一。
每个模块的 API,均需要进行认证和鉴权。
某些模块的 API 请求可能由于业务突发性增大。
在这种情况下,对 API 的管理和使用,会随着微服务模块的增长而越来越麻烦。通过 API 网关,能很好的解决这些问题:
完成 API 的统一管理,对于要使用的 API 的用户,仅需在一个地方完成 API 使用查询。
自动生成文档和 SDK,并可以自动完成测试调用,方便使用者或开发者更快速的开始使用 API。
进行请求流控,不会导致后端模块由于突发性压力而失败。
统一 API 的规范、命名、参数调用方式。
进行统一的 API 认证和鉴权。
Serverless 开发
通过使用 API 网关,配置 API 对接后端的 Cloud Function,则对 API 的请求,均会触发 Cloud Function 的执行,实现业务功能。对于 Serverless 开发,做到了每次仅对实际请求和执行过程付费。
传统应用的 API 暴露
通过 API 网关,传统应用无需将旧有的 API 接口直接暴露在公网上,避免服务器漏洞和安全性问题。
借助 API 网关内的流量控制,防止过大的突发性请求传递到应用上,保障您业务的稳定性。
结合腾讯云提供的 CAM 能力,为不同使用者或客户端提供不同权限的访问控制,满足不同层次用户的使用需求。