从软件行业诞生之日起,技术和业务总是相辅相成。业务的创新促进着软件架构从最早期的单体架构、分布式架构,转变到了如今火热的微服务架构,以及云时代下诞生的Serverless架构。API网关作为单体应用和微服务架构中流量的入口和API的管理者,对于Serverless架构来说依然扮演着重要的角色。
什么是Serverless
Serverless架构即“无服务器”架构,是云计算时代一种全新的革命性的架构模式。其核心思想是用户无须关注支撑应用服务运行的底层服务器的状态、资源(如CPU、内存、磁盘及网络)和数量,软件应用正常运行所需要的计算资源由底层的云计算平台动态提供。例如AWS的Lambda,其作为一种计算服务,可根据时间运行用户的代码,无需关心底层的计算资源。Serverless的出现为企业带来了巨大的商业价值:
- 降低成本:为了应对可能出现的业务高峰,我们必须提前购买更多的资源,比如网络、硬盘、CPU等,但是这些资源很多时候会被闲置,无法得到充分利用。而在Serverless架构下,服务按照云计算pay-as-you-go原则按需收费,节省了使用成本。
- 简化运维:Serverless架构使软件服务和服务器之间实现了解耦,开发人员只需专注自身业务,无需关心底层硬件,大大简化了运维工作。
- 快速开发:在Serverless架构下的应用功能由一个一个的无状态函数实现,因此降低了功能模块之间的耦合度,从而大大提高了软件开发效率,缩短了产品的上市时间。
- 快速迭代:通过Serverless架构,企业可以快速开发出各种应用原型供用户使用,进行低成本试错,从而增强企业创新能力。
为什么Serverless需要API网关
Serverless架构提供的能力大多数时候都是通过API的形式表现出来。对于服务提供者,需要在定义API时绑定自己开发的函数;对于服务调用者,通过API发起对函数的调用,获得执行结果。
而在开发过程中服务提供者该如何对数量庞大的API进行管理,如何将这些API高效、安全的开放给服务调用者呢?答案是——API网关。下图是API网关作为API调用的入口,最终触发函数的调用过程。API网关通过日志服务、云监控、调用链等功能很好的保证了函数调用的可追踪性。
在帮助您的企业实现Serverless架构过程中,京东云API网关能为您提供丰富的产品功能:
1、API管理
API网关提供了API生命周期管理的功能,包括API创建、发布、编辑、删除等,当API发布之后,用户(服务提供者)还可以调试自己的API。对于函数服务,只需要在编辑API时,把服务的后端指向Function Service即可,下图展示的是在京东云API网关控制台如何指定Function后端的过程。
同时,在Function控制台就可以开发函数,并进行调试。下图是函数编辑的界面。
2、保证API调用的安全性
API网关的身份认证机制保证了用户合法性,签名算法保证了数据不会被篡改,访问授权保证了用户的调用是可控的,WAF、IP白名单等功能有效防止了恶意的访问。
3、协助排查问题,记录函数服务的调用情况
创建完函数服务后,每个对API的调用请求经过API网关,网关都会产生对应的日志,您可以从日志中查询到当前调用了什么函数以及函数执行的时间,从而为问题排查提供了有效依据。
4、提供SDK和文档
API创建完成后,用户只需要下载SDK及文档,便可以快速调用API。
通过API中心帮助API提供者获利
京东云API中心是实现API商品化的媒介平台,您可以通过京东云API网关将API发布到的API中心供其他用户购买使用,使用者根据调用次数或者流量支付费用,从而帮助您完成API的商品化和变现过程。
触手可及的Serverless
京东云API网关和函数服务的结合使用,将能够使您的企业和业务与Serverless再近一步,变得触手可及。而未来,京东云API网关还将提供基于微信小程序、京东小程序的鉴权方式,同时对外开放API中心,促进API商品化,为您在企业Serverless的进程中提供尽心尽力的服务,帮助您的企业和业务更好的利用云计算的浪潮提高效率,实现价值!
点击【阅读】,了解更多API相关信息
欢迎点击“京东云”了解更多精彩内容