前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于无服务器计算,您需要知道的10件事

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

作者头像
静一
发布2018-03-27 15:32:46
9410
发布2018-03-27 15:32:46
举报
文章被收录于专栏:云计算D1net

如果您阅读了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的无服务器服务。陈峻译

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-02-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云计算D1net 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
CODING DevOps
CODING DevOps 一站式研发管理平台,包括代码托管、项目管理、测试管理、持续集成、制品库等多款产品和服务,涵盖软件开发从构想到交付的一切所需,使研发团队在云端高效协同,实践敏捷开发与 DevOps,提升软件交付质量与速度。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档