京东智联云在Serverless的探索是怎样的

发布时间:2021-10-12 14:40:21 作者:柒染
来源:亿速云 阅读:94

京东智联云在Serverless的探索是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

Serverless 的概念和定义

提到 Serverless,⼤家基本上第⼀时间会想到的就是 AWS lambda,没错,让 Serverless 这个名称真正⽕起来的其实就是 AWS 推出的 FaaS 服务 -- Lambda,它是⼀个平台,允许你在云上允许独⽴的代码段,通过预先设置好的事件触发代码的运⾏。

除了 FaaS 之外,还有BaaS,虽然和 Blockchain as a Service 的缩写⼀样,但它其实是 Backend as a Service -- 后端即服务的缩写,⽆需编写/管理所有服务端组件,与虚拟机和容器相⽐,概念上更接近 SaaS(软件即服务),BaaS 服务都是领域通⽤的组件服务,通过 API 调⽤的⽅式来使⽤。

说完了定义,再来看下 Serverless 的发展史。

京东智联云在Serverless的探索是怎样的

在过去提到云计算,⼤家⽿熟能详的就是 IaaS,PaaS,SaaS,那么这个 FaaS 和其他三者什么区别?在我的定义⾥⾯,操作系统以上都需要⾃运维的属于 IaaS;PaaS 其实和 FaaS 是⼏乎⼀样的,除了应⽤这⼀层之外,其他都是由云服务提供商来进⾏运维;SaaS 最简单,现成的,直接上⼿使⽤即可。

⼤家可能会好奇,既然你说 FaaS 和 PaaS ⼏乎⼀样,那么为什么不直接称之为 PaaS 呢。不着急,我们先来看看这个:CloudFoundry,可能有⼀些⼈会⽐较陌⽣,但是如果你是属于云计算的⽼兵,那么你肯定不会陌⽣。

AWS 是 2006 年推出的,国内最早的阿⾥云也是在 09 年才成⽴,其实到了 2012 年左右,云计算的概念才慢慢传到国内,我是 2013 年开始涉⾜云计算,那时候其实就已经开始 IaaS,PaaS,SaaS 的竞争,有的公司从 IaaS 做起,有的直接从 PaaS 或者 SaaS 开始做起;那时候提到 PaaS,肯定就会提到 CloudFoundry(业界⾸个开源的 PaaS 平台),很多互联⽹企业基于 CloudFoundry 构建了 PaaS 云服务, ⽐如:京东的 JAE,新浪的 SAE,百度的私有云等等。

当我第⼀次接触 FaaS 的时候,我第⼀个感觉就是, 咦,这个和 CloudFoundry 很相似啊,在你向 CloudFoundry 发布应⽤的时候,对执⾏环境有要求,明确选择你是基于什么开发语⾔以及版本,如果当前平台不⽀持,那么你其实也是⽆法部署运⾏起来的,其次平台也提供了⾃动弹性伸缩,⾃动服务⾼可⽤,以及⽹关/路由等服务,然后你发现两者的最⼤区别在于, CloudFoundry 平台上提供的是⼀个常驻服务,但是 FaaS 是⼀个事件触发代码运⾏的服务。

为了让⼤家更直观的理解,我们来看下这个。

京东智联云在Serverless的探索是怎样的

在裸⾦属时代,从硬件到代码都是需要⾃运维的,到了后来出现了虚拟化,像各家云上的云主机服务,使⽤者只需要关注操作系统以上这⼀层即可,再到后来的容器技术出现,使⽤者是需要关注容器⾃身和业务代码即可,⽬前 CloudFoundry 平台就是提供了容器服务,⽤户将 ⾃⼰的业务代码部署到容器中,作为⼀个常驻服务运⾏起来。最右边就是 Function 了,⽤户连容器都不需要 ⾃⼰维护了,只需要关注代码即可。

京东智联云在Serverless的探索是怎样的

每⼀项新技术的出现即是为了解决当前的技术遇到的问题,同时新技术的采⽤也必然会引⼊新的问题。⾸先说下 Serverless 的优势:

接着说下 Serverless 的劣势:

Serverless 在京东智联云的应⽤和实践

介绍完 Serverless 的概念和定义,接下来看看 Serverless 在京东智联云的应⽤和实践。

⾸先我们来看下⽬前在京东智联云上已经提供的 Serverless 服务列表都分别有哪些:

接下来详细看下京东智联云的 FaaS 服务技术架构图。

京东智联云在Serverless的探索是怎样的

中间粉⾊框起来的这部分属于 Faas 的内部系统模块;

在整个系统中,trigger、dispatcher、scheduler 服务都会和 etcd 服务进⾏交互,通过 etcd 来确保数据的⼀致性以及进⾏⼀些选主操作。

⽬前 FaaS 已经接⼊的事件源分别是 API ⽹关,OSS【对象存储】,云事件(有点类似通知服务,可以定义事件源,⽐如是某⼀个资源的监控指标触发了条件之后,会调⽤ FaaS 服务),还有就是 JQS【队列服务】;前三者事件采⽤主动推送的⽅式,JQS 的事件是通过 FaaS 主动去轮询获取的。FaaS 接收到 API ⽹关的事件会采⽤同步处理⽅式,其他三者会采⽤异步处理的⽅式。

京东智联云在Serverless的探索是怎样的

在使⽤新技术前的第⼀步⾸先是了解新技术是⼲嘛的,接下来就是如何基于新技术对现有的业务进⾏改造。

下⾯,我们以⼀个简单的单体应⽤为例,这是⼀个 B/S 类型的业务,Server 是⼀个单体应⽤,采⽤ MVC 的架构,涵盖了 HTML,JS,Service,Data Access ⼏个模块,数据采⽤ Database 进⾏存储;除了 Database 之外,其他的服务都需要⾃开发和运维。

京东智联云在Serverless的探索是怎样的

针对这个应⽤进⾏ Serverless 化之后,就变成了这样的架构,HTML,JS 的静态⽂件通过 OSS 来进⾏存 储,⽤户认证采⽤单独的 User Authentication 第三⽅服务,不再需要⾃⼰开发单独的 service 服务来处理⽤户登录认证问题;⽽其他业务逻辑就使⽤ FaaS 来进⾏部署,通过 API Gateway 对外暴露,当浏览器触发业务调⽤的时候,就会触发相应的 FaaS 服务。通过 Serverless 化,真正需要开发的功能就只剩下 FaaS 的业务代码⽽已了,相对传统⽅式便捷了很多。

京东智联云在Serverless的探索是怎样的

接下来,看看京东是如何使⽤ Serverless 服务的。

案例⼀,是京⻨消息平台,京⻨是京东给商家提供的⼀个⼯具服务市场,通过这个市场可以下载聊天⼯具, 订单推送⼯具,运营分析⼯具等。下⾯这个图是京⻨的消息平台服务,会实时的将订单、商品、售后等信息 通过加⼯处理之后,发送到京东智联云的 JQS 当中,JQS是全托管的基于 Serverless 架构的消息队列服务,相应的⼯具会从对应的 JQS 中获取到相应的信息,并把相应的信息展示给对应的商家。由于消息源的消息量是动态变化的,所以对消息队列的集群处理能⼒需求也是动态的,所以 JQS 很好的满⾜了京⻨的诉求, 根据真实⽤量付费。

京东智联云在Serverless的探索是怎样的

案例⼆,是京喜报警平台,京喜是京东旗下以拼购业务为核⼼的社交电商平台。当平台服务有报警信息进⼊到消息队列,会触发对应的业务线的报警处理的 FaaS 服务,根据 MQ 中的报警内容,做出相应的响应事 件,可以是发短信,发邮件,或者是打电话。同时针对固定的报警逻辑,可以执⾏诸如重启服务,清理数据等相关操作。

京东智联云在Serverless的探索是怎样的

因为本身报警就不是常态,并且随着业务的增加,如果有⼀个常驻服务来处理报警业务,这样难免会照成资源浪费,采⽤ FaaS 就可以很好的避免资源浪费的情况,当有报警产⽣的时候,再运⾏相应的服务来处理报警。

以上两个是⽐较简单的京东在使⽤ Serverless 服务的场景,当然还有更多的复杂场景也会使⽤到。就像上⾯所讲,Serverless 并⾮万能,不能满⾜所有场景的诉求,但是我还是依然很看好它的未来。

Serverless 的挑战与未来

在未来的 Serverless 形态中,还是存在很多的挑战需要去解决:

  1. 新的 BaaS 服务,可以提供临时和持久的存储服务,这样就可以避免购买常驻的存储服务,从⽽降低相关费⽤的开销

  2. 在符合 Serverless 理念的情况下,降低服务间的调⽤开销;对于⼀个线上的业务系统⽽⾔,低延迟是永远逃避不了的话题,如何采⽤ Serverless 的情况下,⼜能满⾜业务需求是 serverless ⼤规模使⽤的前提

  3. 软硬结合,提供更⾼的处理性能;针对在 FaaS 平台上运⾏的特定语⾔代码,在硬件层⾯进⾏相关的特殊优化,从⽽实现代码运⾏加速,提⾼性能;

  4. Serverless 技术的采⽤降低 IT ⽀出成本;真正的让⼤家意识到 Serverless 的应⽤可以降低对 IT 的⽀出和投⼊;

  5. 采⽤ Serverless 可以更便捷、更快速的实现功能;通过周边的⼯具,更⽅便的让⽤户使⽤serverless来构建业务系统,真正实现业务的迭代和创新速度

即使 Serverless 还是有那么多挑战待解决,我对 Serverless 的未来依然充满信息;⽬前在 CNCF 的serverless 版图⾥⾯有越来越多的 Serverless 服务加⼊了进来,相信随着云原⽣的兴起,Serverless 可以搭上这个趟⾼速的列⻋,顺利起⻜。

我坚信,Serverless 未来可期!

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

推荐阅读:
  1. 数智化时代,购物中心运营模式新探索
  2. 论剑新基建,京东智联云拉开新工业革命序幕

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

serverless

上一篇:Kubernetes桌面客户端Lens是怎样的

下一篇:coreseek如何解决搜索英文的问题

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》