写点什么

沉寂多年,无服务器爆发,其硬核是什么?

  • 2019-08-30
  • 本文字数:3051 字

    阅读完需:约 10 分钟

沉寂多年,无服务器爆发,其硬核是什么?

和大多数 IT 热词一样,无服务器自诞生以来,一直处于不温不火的状态。可就在今年忽然爆发,令人惊讶,也有技术专家称之为“临界点”来临。如果这样的话,无服务器将迅速与其他技术相融合,成为新型部署方式。


不要盲目乐观。IT 热词之所以“热”,是因为它从来不是单独发展的,而是建立在云、大数据、容器等技术的成熟度之上。从这样的角度来看,无服务器是“云计算的一小步”,不断驱使云计算更加完善,进入千百行业,服务用户。


那么,究竟什么是无服务器技术,它是如何发展的,它的优点、缺点是什么,对企业的价值在哪里?本文将全面梳理。

潮流来了,覆盖率或达 38%

在定义无服务器之前,先看一下业内的趋势。


以去年 8 月 CNCF(Cloud Native Computing Foundation,云原生基金会)的一项调查为例,无服务器的应用正在快速增长。38%的企业表示目前正在使用无服务器技术,这一比例较以往的 31%有所增加,其中 32%的企业采用托管类无服务器平台,6%的企业采用安装类无服务器平台。


调查中,部分受访者目前仍未采用无服务器技术,这一比例从过去的 41%下降到了 37%。但是,另外有 26%的受访者表示,计划在未来 12 至 18 个月内使用无服务器技术。


这项调查还对可安装类无服务器平台市场的使用情况做了具体研究,其中 Kubeless 占比最大,达到 42%;Apache Open Whisk 和 OpenFaaS 分别居于第二、三位,占比达 25%和 20%。


除了安装类无服务器平台外,托管类无服务器平台也是一大选择,具体的市场分布情况在这里不一一赘述,详细情况可参考下图。


数据来源如下。


https://www.cncf.io/blog/2018/08/29/cncf-survey-use-of-cloud-native-technologies-in-production-has-grown-over-200-percent/


据了解,本次调查覆盖 2400 名人员,其中包括 49%的开发人员、36%的运营人员、11%的 IT 经理以及 14%的开发经理。


事实证明,无服务器潮流已来。

什么是无服务器?

既然无服务器是未来的一个趋势,那么,什么是无服务器?


我们稍微回顾一下历史沿革。在 2009 年,业内提出 DevOps 理念,指向敏捷开发、运维和协作的方向。在 2011 年,有机构预测 DevOps 将发展成为 NoOps,也就是未来不需要运维人员。直到 2014 年,该概念才进一步得到了扩展,落实到企业。


根据定义不同,业内通常有几类简称:


  • FaaS:函数即服务(Function-as-a-Service,FaaS),或译为功能即服务。

  • BaaS:后端即服务(Backend-as-a-Service,BaaS)

  • MBaaS:移动后端即服务(MobileBackend-as-a-service,MBaaS)

  • CaaS:容器既服务(Containers-as-a-Service,CaaS)

FaaS 的优点和不足

业内通常以 FaaS 来定义无服务器,它有几个鲜明的特点。


首先,它同云计算一样,演变成为服务。开发者无需购买硬件资源,更不用关心硬件的配置环境、物理设备和虚拟服务器,只需关心代码的运营转态是否高效。


其次,这种代码可以与传统服务器代码混用,也可以编写不需要任何服务器配置要素的应用程序。


第三,FaaS 将更多的运维压力交给了第三方云厂商,由第三方管理服务器(物理或者虚拟)的运营状态,特别是在多租户的情况下确保运营的高效、稳定和安全。


第四,与容器、微服务的概念和应用密不可分,越来越趋于融合。


但是,正如所有的技术都有不足一样,无服务器的这种完全依赖于第三方云厂商的技术还存在明显的不足。


首先,对云厂商的要求提高。这意味着寻找可靠的第三方云服务商尤为重要,毕竟安全问题、多租户问题、供应商锁定、API 调用、功能缺失等基础设施方面的功能都取决于云厂商。


第二,评估和测试工具。如何确保程序能顺畅运营在第三方提供的无服务器环境中?是否有一些评估标准和指标?通常来说,就是基于何种标准来评定云厂商的环境更好更优?


第三,实施的困难。这并不指程序能否运行,而是指程序集成、封装的难度增加。由于只能是运行某一类功能,并且也无法实现“原子回滚”,程序的稳定性就更为重要了。

无服务器是否可以“包打天下”?

所有技术都有其适用的场景,无服务器也并不是“包打天下”,它主要应用在以下这些范围。


▷ 函数计算 有人把无服务器也称之为函数即服务,因为其轻量级适合无状态应用程序和函数式编程模型,包括应用程序的编程接口发布、查询响应,面部识别和语音识别等。对于百度智能云这样专注在 AI 应用的云服务厂商来说,能够迅速提供这种服务,AI 功能与之的匹配性更有优势,也有专门的函数计算产品 CFC。


▷ 边缘计算 边缘计算的核心是将一部分数据放在边缘节点收集、存储和处理,具有轻量级,数据量大、功能较为单一等特点。这也是无服务器领域一个较为广泛的应用,可以与边缘计算的存储产品相结合。


▷ 某些数据的工作负载 如果只具有某一类型功能,并不需要太多的数据交互功能,那么像高性能计算、商业智能、建模、基础科学研究等都是应用的场景。


从这几点来看,无服务器之所以流行是由执行任务单一、数据轻量、部署简单的特性决定的。如果真要大规模落地,必然会推翻现有的诸多技术架构,尤其是编写代码的方式。

对企业的好处是什么?

通常来说,新技术之所以能被应用,是因为具有降低成本、减少人力和让 IT 团队更敏捷等优势,这些无服务器技术都具有。


使用无服务器技术就如当前我们使用云计算一样,按照实际的使用情况来计费,而不是按照预留的计算资源来计费。这也是无服务器技术的本质——功能既服务,这是在平台即服务(PaaS)甚至是容器即服务(CaaS)之上发展衍生出的一种服务形式,没有脱离云计算的商业范畴。


在一些研究机构中甚至认为,无服务器技术可以为企业节省 70%~90%的成本,这要取决于具体环境。也有人认为这种想法过于乐观。


当然,由于不用关心硬件、配置环境和运营,无服务器技术会让开发者的敏捷性提高。DevOps 最终演变成 NoOps,就会减少人力,让企业的开发人员专注在代码方面。但这一愿景一时半刻还实现不了。目前可见的好处是,会让开发具有更快的开发速度和更低的成本。

临界点已到,未来该走向何方?

无服务器技术始终在不断演进的过程中,应用也不断增多。福布斯技术委员会认为,采用无服务器应用已经到了一个临界点。他们预测,2019 年无服务器技术将有如下几个重要趋势。


标准化 越来越多有关于无服务器技术的标准将出台,这将确保各个平台之间具有更好的移植性和互操作性。以 CNCF 为例,已经将相关标准列入日程中。标准化的好处在于,促使越来越多的厂商加大创新力度,这也是技术成熟的一个象征。


编排服务 目前,各大厂商之间的无服务器联盟正在形成。除了百度智能云之外,谷歌和 IBM 等公司也推出了 Knative 的开源框架。试图基于 Kubernetes 之上实现无服务器、服务网络和容器之间的统一,并形成一个云应用的编排平台。这可能也是趋势之一:容器和无服务器正在并行发展,最终将统一。


融合加快 无服务器让应用程序呈现分布式状态,在开发速度、模块化方面都有优势。但在一致性、完整性和运营方面还有缺点。未来,企业将会越来越多的要求统一管理云资源——包括网络、公有云和私有云的资源,从不同的颗粒度来控制,这将为无服务器的应用迎来新的转机。


更复杂的测试工具 为了确保这种基于微服务的应用顺利通过测试,将会出现更多复杂的测试工具以应对测试挑战。可能包括集成测试、基于应用的关键组件的测试等。


当然,这些趋势还包括安全性、提高交付的速度和稳定性等,这是任何新技术出现或者在应用之前都需要考虑的问题。所有问题并不是一蹴而就的,需要在实践中慢慢得到解决。


百度智能云,聚焦人工智能(AI)、大数据(Big Data)、云计算(Cloud Computing),以“ABC”三位一体战略,帮助企业客户实现数字化、智能化转型。百度智能云,计算无限可能!


2019-08-30 20:014298

评论

发布
暂无评论
发现更多内容

# 靠谱:开源IM项目OpenIM压测程序介绍-自己动手压测性能和稳定性

Geek_1ef48b

k8s自定义controller三部曲之一:创建CRD(Custom Resource Definition)

程序员欣宸

Kubernetes k8s 9月月更

从零到一,教你搭建「CLIP 以文搜图」搜索服务(二):5 分钟实现原型原创

Zilliz

机器学习 深度学习 搜索引擎

Nacos 安装教程(史上最详细保姆级教程)

nacos SpringCloud 9月月更

基于 xbot 实现微信关键词自动回复

Hanson

微信 微信机器人 自动回复

数据可视化系列教程之组件构成

云智慧AIOps社区

前端 低代码 开源项目 数据可视化 可视化大屏

新书上市 | 连载 5 年,千万读者追更,这本书讲透了通信背后的故事!

图灵社区

通信技术 科技史

南阳蓝天燃气携手WeLink共创数字蓝天

科技云未来

深耕隐私计算技术,瓴羊DataTrust团队喜获殊荣

瓴羊企业智能服务

华为云WeLink直播助力高校毕业典礼:这届毕业生,我们云上嗨

科技云未来

Predicate

急需上岸的小谢

9月月更

从用户到开发者是一种思维进化过程 | 访 StarRocks Committer 周威

StarRocks

Web3大行其道,为何说Zebec值得投资人期待?

BlockChain先知

程序员的摸鱼加速器!

Liam

程序员 前端 测试 后端 Postman

Linux面试最高频的5个基本问题

千锋IT教育

实践分享!GitLab CI/CD 快速入门

北京好雨科技有限公司

企业号九月金秋榜 Kuberetes

Web3的流支付代表Zebec,熊市布局的价值逻辑

鳄鱼视界

数据中心网络架构的需求原则及策略

阿泽🧸

数据中心 9月月更

测试需求平台3-登录打通和产品列表功能实现

MegaQi

测试平台开发教程 9月月更

高级产品经理必备素养

产品海豚湾

产品经理 职业发展 商业化 9月月更 产品价值

关于链路追踪所需要了解的知识

穿过生命散发芬芳

链路追踪 9月月更

一文看懂Mysql锁

六月的雨在InfoQ

MySQL MySQL锁 9月月更 Mysql死锁 Mysql锁粒度

高并发场景下,6种方案,保证缓存和数据库的最终一致性!

C++后台开发

数据库 缓存 高并发 后端开发 C++开发

万物皆可集成系列:低代码对接企企云实现数据集成

葡萄城技术团队

maven入门

楠羽

maven 笔记 9月月更

玖章算术受邀参加红杉Talk「创新的复利」科技专场,共同探讨云计算的前世今生

数据库 数据复制 数据管理 数据备份 玖章算术

leetcode 206. Reverse Linked List 反转链表(简单)

okokabcd

LeetCode 数据结构与算法

2022-09-01:字符串的 波动 定义为子字符串中出现次数 最多 的字符次数与出现次数 最少 的字符次数之差。 给你一个字符串 s ,它只包含小写英文字母。请你返回 s 里所有 子字符串的 最大波

福大大架构师每日一题

算法 rust语言 福大大

跟着卷卷龙一起学Camera--黑电平Blacklevel

卷卷龙

ISP camera 9月月更

15款Python编辑器,你都使用过哪一款

千锋IT教育

构筑校园  “云资环”助力精准防控

科技云未来

沉寂多年,无服务器爆发,其硬核是什么?_服务革新_百度云_InfoQ精选文章