首页 云计算 服务器 大数据 存储 IT 安全 物联网 软件

云计算

云趋势频道旗下栏目: 云资讯 云安全 云开发 云趋势

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

来源:51CTO   发布时间:2019-05-12
摘要:【51CTO.com快译】如果您阅读了2017年有关于IT特别是云计算方面的各种预测,您很有可能碰到无服务器计算这一术语。早在2014年亚马逊的网络服务(AWS)已推出了第一大无服务器计算服务AWS Lambda。2016年,其他主流云提供商也跟进了此潮流。现在这种新型的云计

【51CTO.com快译】如果您阅读了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产品。