从软件行业诞生之日起,技术和业务总是相辅相成。业务的创新促进着软件架构从最早期的单体架构、分布式架构,转变到了如今火热的微服务架构,以及云时代下诞生的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相关信息

欢迎点击“京东云”了解更多精彩内容

API网关,让您和Serverless再近一步的更多相关文章

  1. API 网关的选型和持续集成

    2019 年 8 月 31 日,OpenResty 社区联合又拍云,举办 OpenResty × Open Talk 全国巡回沙龙·成都站,APISIX 作者温铭在活动上做了< API 网关的选 ...

  2. 基于.NET CORE微服务框架 -谈谈surging API网关

    1.前言 对于最近surging更新的API 网关大家也有所关注,也收到了不少反馈提出是否能介绍下Api网关,那么我们将在此篇文章中剥析下surging的Api 网关 开源地址:https://git ...

  3. 如何架构一个合适的企业API网关

    API Gateway(API GW / API 网关),顾名思义,是出现在系统边界上的一个面向API的.串行集中式的强管控服务,这里的边界是企业IT系统的边界,主要起到隔离外部访问与内部系统的作用. ...

  4. 为什么需要API网关?

    目录 0:00 微服务与网关(Microservices & API Gateways) 大家好,我叫Macro,今天我们谈论有关微服务和网关的话题.我是Mashape的CTO,也同时是开源网 ...

  5. 一个简单可参考的API网关架构设计

    网关一词较早出现在网络设备里面,比如两个相互独立的局域网段之间通过路由器或者桥接设备进行通信, 这中间的路由或者桥接设备我们称之为网关. 相应的 API 网关将各系统对外暴露的服务聚合起来,所有要调用 ...

  6. 深入浅出聊聊企业级API网关

    http://architect.dataguru.cn/article-11431-1.html API Gateway(API GW / API 网关),顾名思义,是出现在系统边界上的一个面向 A ...

  7. surging API网关

    基于.NET CORE微服务框架 -谈谈surging API网关 1.前言 对于最近surging更新的API 网关大家也有所关注,也收到了不少反馈提出是否能介绍下Api网关,那么我们将在此篇文章中 ...

  8. 借助腾讯云的云函数实现一个极简的API网关

    借助腾讯云的云函数实现一个极简的API网关 Intro 微信小程序的域名需要备案,但是没有大陆的服务器,而且觉得备案有些繁琐,起初做的小程序都有点想要放弃了,后来了解到腾讯云的云函数,于是利用腾讯云的 ...

  9. API网关在API安全性中的作用

    从单一应用程序切换到微服务时,客户端的行为不能与客户端具有该应用程序的一个入口点的行为相同.简单来说就是微服务上的某一部分功能与单独实现该应用程序时存在不同. 目前在使用微服务时,客户端必须处理微服务 ...

随机推荐

  1. 【转】深入分析JAVA IO(BIO、NIO、AIO)

    IO的基本常识 1.同步 用户进程触发IO操作并等待或者轮询的去查看IO操作是否完成 2.异步 用户触发IO操作以后,可以干别的事,IO操作完成以后再通知当前线程继续处理 3.阻塞 当一个线程调用 r ...

  2. Health Check【转】

    强大的自愈能力是 Kubernetes 这类容器编排引擎的一个重要特性.自愈的默认实现方式是自动重启发生故障的容器.除此之外,用户还可以利用 Liveness 和 Readiness 探测机制设置更精 ...

  3. 读《Adaptive Thresholding Using the Integral Image》自适应图像阈值

    图像的二值化问题总是一个问题.虽然使用深度学习的方法取得了不小的进展,但是传统的方法还是值得借鉴. 刚好随机游走到这篇文章 挖个07年的坟  地址:http://people.scs.carleton ...

  4. GNS3 模拟DHCP之地址请求

    R1: conf t int f0/0 no shutdown ip address dhcp end R2: conf t int f0/0 no shutdown ip add 12.1.1.2 ...

  5. BGR to RGB排列

    BGR to RGB排列 2012年09月27日 13:59:48 雷电羊 阅读数:4759   https://blog.csdn.net/cjsycyl/article/details/80247 ...

  6. leetCode242 有效的字母异位词

    引言: 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram&qu ...

  7. 富文本API

    这个笔记来自网络资料的总结 简书大佬三省吾身_9862 tuobaye个人博客 富文本有相关3个API和一个新属性 var selection = window.getSelection(); var ...

  8. Day6 - K - 陌上花开 HYSBZ - 3262

    有n朵花,每朵花有三个属性:花形(s).颜色(c).气味(m),用三个整数表示. 现在要对每朵花评级,一朵花的级别是它拥有的美丽能超过的花的数量. 定义一朵花A比另一朵花B要美丽,当且仅Sa>= ...

  9. Thymeleaf(一)---引入js/css文件

    th:href="@{/static/css/style.css}" th:src="@{/static/js/thymeleaf.js}" index.htm ...

  10. 046、Java中使用if…else判断

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...