API网关跨一个或多个内部API提供单个统一的API入口点。 通常还包括限制访问速率限制和有关安全性等特点。 诸如Tykio的API管理层增加了额外的功能,例如分析,货币化和生命周期管理。
基于微服务的架构可以具有10到100个或更多个服务。 API网关可以为外部消费者提供统一的入口点,而与内部微服务的数量和组成无关。
API网关对于微服务的好处:
1、防止内部关注暴露给外部客户端
API网关将外部公共API与内部微服务API分开,允许添加微服务和更改边界。 其结果是能够在不对外部绑定客户端产生负面影响的情况下重构和适当大小的微服务。 它还通过为您的所有微服务提供单一入口点,对客户端隐藏了服务发现和版本控制详细信息。2、为您的微服务添加额外的安全层
API网关通过提供一个额外的保护层来防止恶意攻击,例如SQL注入,XML解析器漏洞和拒绝服务(DoS)攻击。
3、支持混合通信协议
虽然面向外部的API通常提供基于>
如果微服务具有共同的关注点,例如使用API令牌的授权,访问控制实施和速率限制。 每个这些关注可以通过要求每个服务都实现它们,但这为微服务的开发增加更多的时间成本。 API网关将从您的代码中删除这些问题,允许您的微服务关注手头的任务。5、微服务模拟和虚拟化
通过将微服务API与外部API分离,您可以模拟或虚拟化服务,以验证设计要求或协助集成测试。
API网关的服务对象
API网关可以为Web端、APP提供API访问,也可以给物联网设备提供API接口。另外致力于开发生态的企业还会为一些合作伙伴提供API网关,供其调用通用的微服务。对于可以提供数据或算法服务的企业,可以在云市场的API网关注册自己的API,从而对外提供服务。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)