关于无服务器计算,您需要知道的10件事

如果您阅读了2017年有关于IT特别是云计算方面的各种预测,您很有可能碰到“无服务器计算”这一术语。早在2014年亚马逊的网络服务(AWS)已推出了第一大无服务器计算服务——AWS Lambda。2016年,其他主流云提供商也跟进了此潮流。现在这种新型的云计算已为新的一年蓄势待发了。

事实上,Gartner在其2017年的十大战略技术趋势里就提到过无服务器计算。该公司认为无服务器是网格式的应用和服务架构趋势的一部分,并解释说:“网格式的应用与服务架构(MASA)是一种多通道的解决方案架构,它利用云和无服务器、容器和微服务、以及APSs与事件来提供模块化的、灵活的和动态的解决方案。”但该公司也警告说:这是一个长期的趋势,它需要IT去采取各种新的工具和新的做事方式。

那么关于无服务器计算,您应该知道些什么呢?

如果这对您来说是一个新的理念或您只是不知道为何它被如此炒作的话,下面将向您介绍无服务器计算的关键概念和对其优、缺点的概述。

1. 无服务器计算并不是真的没有服务器。

大多数提供商都承认“无服务器计算”一词确实有些用词不当。您的工作负荷总归要运行在服务器的某处。而无服务器计算的不同之处在于:最终用户不需要部署、采购、维护或管理这些服务器而已。事实上,您甚至不需要知道您使用着何种或者多少台虚拟机(VMs)。

您可以想象无服务器计算是最近趋向于为最终用户抽象和简化IT的一个扩展。其第一步是虚拟化,以免去用户需要知道其工作负荷运行在哪台物理服务器之上。云服务进一步使的得采购更为容易,但用户仍需选择他们要哪种虚拟机来运行、启动和停止服务。无服务器计算在逻辑上走到了下一步,其服务能够帮忙您选择合适的虚拟机,并按需启和停服务。

2. 这是一种云计算。

无服务器计算,其更具描述性的名称(且为一些提供商偏好的名称)是功能即服务或FaaS。就像IaaS、SaaS和PaaS那样,FaaS是一种云计算。在这种情况下,您购买必要的IT基础设施来运行应用程序的特定功能。例如,假设您的公司有一个用于创建特定报告的分析应用程序。您可以使用无服务器计算来实现创建报告的功能。当应用程序需要完成特定的任务时,该服务会自动扩展出所需的云实例,并在功能完成后自动关闭这些实例。您可以将FaaS用于一个完整的应用程序或只是一些功能。

3. 无服务器计算让您在运行代码时按毫秒级计费。

在使用其他类型的云计算服务时,提供商通常按小时收费,且客户通常以被提前支付使用的方式获取折扣。而无服务器计算提供商是以比秒更小的计费单位向客户开具账单的。以AWS Lambda为例,它是按照“每100毫秒执行您的代码和代码被触发的次数。”的标准向用户计费的。此处的好处在于:当您没在使用活跃的云计算实例时,您不必为其买单。因此它将给云计算带来“按使用付费”的细粒度级新模型。

4.无服务器计算提供了更多利好。

无服务器计算的主要好处是:开发人员在创建应用程序时,不再需要花时间考虑基础设施对应用程序的管理。他们只需上传代码,而该服务会打理剩下的各种事务。对于企业来说,这可能导致大量的时间和成本的节约。它省下了员工们管理基础设施的精力,去从事更有价值的项目。此外,它可以提高灵活性,以允许公司能更快地推出新的应用程序和服务。这转而又可以提高客户的满意度。所有这些好处都可以帮助公司更加盈利也更为成功。

5. 无服务器计算对DevOps乃是极好的。

根据RightScale(一家云管理的服务商)的2016年度云状态报告显示,DevOps的趋势是:74%的整体组织和81%的大型企业已经在IT中采用了DevOps的各种方法。与敏捷软件开发密切相关联,DevOps也采用敏捷原则,并将它们应用于IT的运营管理。它鼓励开发人员和运营人员之间的沟通和密切合作,且开发人员常常要扮演管理其应用程序所运行的基础设施的角色。

由于无服务器计算减少了员工们花费在管理服务器上的时间和精力,所以能很好的适用于DevOps环境。在某些情况下,FaaS允许组织采用一种“免运营(NoOps)”的方法,即对服务器的部署和管理已是如此的自动化,以至于开发人员根本不需要与运营人员进行协作了。

6.无服务器计算与微服务架构有关。

无服务器计算也与另一个热门发展趋势:微服务架构密切相关。在微服务体系结构中,开发人员独立地将其能够构建、管理和扩展的各种小服务拼装成应用程序。而无服务器计算本质上就能将此细化到更小的水平。

然而,在业界内也有对微服务和其功能的构成方面的争论。两者之间的区别是模糊的,一些提供商经常将微服务和功能这两个术语进行混用。

这里值得重点注意的是:将应用程序视为各种较小独立的部分的集合,而不是个单一的整体已是一种趋势。

7. 您不需要学习一门新的语言。

各个无服务器计算的提供商已很快表明,其FaaS产品支持多种编程语言和框架。一般来说,对于一个提供商的其它云计算服务所支持的特定语言或工具,其无服务器计算很可能也会支持。

对于开发人员来说,这种具有语言方面支持的特性,增加了无服务器计算所能提供的生产力和效率。因为他们不需要花大量的时间去学习新的语言,大多数开发人员完全可以迅速开始上手无服务器计算。事实上,甚至一些提供商已在广告里声称:开发人员可以在短短几分钟之内建立和运行其FaaS产品。

8. 无服务器为您扩展。

对于正在经历着快速增长的组织而言,无服务器计算的可扩展性是其最有吸引力的特征之一。构架一个应用程序,使之在应对数百万个用户时能够有像在应对几十个用户时一样工作表现,是当今开发人员所面临的最困难的挑战之一。无服务器计算却消除了该挑战,因为每个功能都是独立扩展,而不需要员工提供额外的虚拟机或实例。如果一个应用程序的实际使用和开发人员最初期望有所不同,那么由于该服务会自动为每个功能按需提供必要的额外资源,因此这将不会成为一个问题。

9. 无服务器计算也有些缺陷。

既然无服务器计算有这么多的好处,您可能会问:那么为什么不是每个人都在使用它呢?可见这种方法也有着一些缺陷。

首先,因为无服务器计算技术非常新,很难找到有经验的员工和工具来支持它。这个问题可能会随着时间的推移变得好一些,但当前的确是一个障碍。

其次,更重要的是,虽然无服务器计算简化了一些东西,但它却复杂化另一些。员工们不再担心一个大的应用程序或是几个微服务的同时,他们现在需要考虑的是数十或是数百个独立的功能。因此整个“生态系统”变得更加复杂,且需要新的管理技术和过程。

第三,企业也可能会因为预见到更大数额的账单而止步不前。如果他们习惯于对云计算进行预付的方式的话,无服务器计算则会给一些组织可能带来一定程度的不确定性与挑战。

10. 您有不同的无服务器计算提供商可选择。

如果您已经准备好去尝试无服务器计算的话,您有很多可选择的提供商。最著名的FaaS当属AWS Lambda,这也是最成熟的可用产品之一。IBM Bluemix提供了一个叫做OpenWhisk的无服务器计算平台,而微软Azure也有一个叫做Azure Functions的服务。谷歌云平台的无服务器仍处于alpha版本,且它被叫做Cloud Functions。

除了主流云提供商,一些小的厂商也投身进了无服务器业务。它们包括提供一个无服务器平台并可运行在任何云上的Iron.io公司,和一个能提供运行在AWS Lambda上框架,其命名有些缺乏想象,直接被叫做Serverless。此外,Joyent(现在已并入三星了)也提供一个叫做Manta Functions的无服务器服务。陈峻译

原文发布于微信公众号 - 云计算D1net(D1Net02)

原文发表时间:2017-02-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逸鹏说道

解析微服务架构(一):什么是微服务

解析微服务架构系列文章将分几篇描述微服务的定义、特点、应用场景、企业集成架构的演进以及微服务转型思路和技术决策考虑等内容,并以IBM技术为例介绍如何实现微服务架...

3194
来自专栏测试开发架构之路

《Google软件测试之道》告诉你什么是测试

第一章:Google软件测试介绍 1.Google的测试团队并非雄兵百万,我们更像是小而精的特种部队,我们依靠的是出色的战术和高级武器 2.在Google,写代...

4247

我们是否应该在物联网上使用无服务器体系结构?

我们正处于前所未有的行业混乱的时代,这是由技术发展过快导致的,特别是在物联网领域。物联网有助于将行业转变为数据驱动的范例,开辟了巨大的机遇。一些公司正通过技术革...

3866
来自专栏DevOps时代的专栏

精选 | DevOps 三十六计之精益敏捷与持续交付

? 前言: “一册在手,DevOps我有”,这就是传说中的《DevOps 三十六计》,相信您读完也意犹未尽,小编就来和您说道说道我注解的《DevOps 三十六...

3159
来自专栏织云平台团队的专栏

新时代运维监控能力的进化——天网云用户体验监控平台实践

运维团队审视业务质量监控能力时,有九个问题值得思考,九问运维后,我们重新审视传统的运维监控能力是否仍然能够满足业务对质量的要求,结合当下移动互联网与新兴的业务形...

9962
来自专栏Java架构师历程

学习微服务的十大理由

始终关注新技术,语言和框架,以彻底改变您的组织。如果你仍然在你的立方体中使用整体框架中的代码搞乱,那么你可能生活在过去,那里有一个小应用程序和一些员工来处理它。...

2523
来自专栏逸鹏说道

解析微服务架构(二):融入微服务的企业集成架构

上一篇文章介绍了微服务架构的起源、定义、通用特性、常见概念误区、微服务架构与SOA架构比较、微服务架构收益以及企业引入微服务架构的策略。 本文将介绍融入微服务的...

2936
来自专栏云市场·精选汇

2018年新规1 个公众号可以关联多少个小程序

微信小程序出新规啦!关于小程序新万小编了解到,微信小程序成为当下热门话题,下面从多个方面来谈谈2018年新规1 个公众号可以关联多少个小程序。

1123
来自专栏BestSDK

想做产品经理,先从写一篇PRD开始吧

一、什么是PRD? PRD为Product Requirement Document的简称,其中文翻译为:产品需求文档。该文档是产品项目由“概念化”阶段进入到“...

3977
来自专栏云计算D1net

什么是云原生应用 有哪些关键点?

最近讨论云原生应用越来越多,其是指原生为在云平台上部署运行而设计开发的应用。公平的说,大多数传统的应用,不做任何改动,都是可以在云平台运行起来的,只要云平台支持...

2837

扫码关注云+社区

领取腾讯云代金券