无服务器解释:下一代云基础设施

无服务器计算是在终端用户无法管理的基础设施上托管应用程序的一种新方式

关于无服务器计算,首先要知道的是“无服务器”是一个非常不好的名称。

与传统的说法相反,在过去两年中突然出现在云计算场景中的技术实际上仍然在服务器上运行。相反,serverless这个名称强调了一个事实,即最终用户不必再管理运行其代码的服务器。

+更多关于网络世界有个足球雷竞技app:实践中的无服务器计算|该公司在运行其应用程序时无需管理服务器或虚拟机+

也许这听起来很熟悉。从技术上讲,在公共基础设施即服务(IaaS)中,终端用户也不需要物理地管理服务器;这取决于亚马逊网络服务和微软世界地图。

但是,所谓的无服务器计算将这一思想又向前推进了一步,它执行开发人员仅使用完成任务所需的精确计算资源编写的代码,不多不少。当触发该代码的预定义事件发生时,serverless平台将执行该任务。最终用户不需要告诉没有服务器的提供者这些事件或函数将发生多少次。每次执行一个函数时,客户只需支付一小部分便士。有些人认为功能即服务(FaaS)或事件驱动计算是一个更好的名称。

IBM负责云产品管理的副总裁Damion Heredia解释说:“我们考虑这个问题的方式是,从基础架构的角度来看,开发人员可以与不同层次的抽象进行交互。”他负责管理名为OpenWhisk的IBM无服务器计算产品。有裸露的金属、虚拟机和容器。“对于某些工作负载,我们希望抽象出所有的管理,这样您就可以执行代码,而不必担心服务器的基础设施或管理。这是serverless。”

现在,行业分析人士、支持者和怀疑论者都在争论这项技术的重要性。它是进化的还是革命性的?它将用于大多数未来的应用程序,还是只是用例的一个子集?目前的答案是,市场还处于初期阶段,所以很难说。但是这种技术的宣传、兴趣和潜在的好处不应该被忽视。

serverless的优点

亚马逊网络服务(Amazon Web Services)在2014年推出无服务器的市场宣传时,受到了广泛赞誉λ,它的无服务器计算产品。

AWS战略总经理马特•伍德(Matt Wood)表示,该产品的灵感来自该公司最受欢迎的产品之一:简单存储服务(S3)。

博客作者Sam Kroonenburg说S3和Lambda之间的关系是一个重要的类比。S3处理用于存储的对象。您提供一个对象,然后S3存储它。你不知道怎么做,你不知道在哪里。你不在乎。没有什么动力值得你去关心。没有磁盘空间这样的东西……所有这些都被抽象掉了。您不能在S3中提供过多或不足的存储容量。克鲁嫩伯格解释道在他的云大师博客中。

伍德表示,AWS希望将同样的理念应用到计算机领域。Lambda处理函数。你提供函数代码和Lambda执行它的需求…在Lambda中,您不能过度供应,或供应执行能力不足。这才是。”

在传统的IaaS云环境中,客户提供虚拟机、存储、数据库以及与之相关的所有安全性和管理工具。他们将应用程序加载到这些vm上,然后使用负载平衡器之类的工具来扩展它们。他们使用管理软件来优化他们的实例大小,并找到不小心留下的虚拟机。Lambda和其他FaaS平台提供了不同的模型。代码是用函数编写的。当触发该函数的事件发生时,Lambda运行它。就是这样。无容量规划,无负载均衡;只是执行任务。

AWS的总经理Wood说,这在很多用例中都很有用。例如,可以编写Lambda函数,以便每次将照片上传到S3时,Lambda创建不同大小的副本,并针对桌面、移动和平板电脑进行了优化。或者,每次将一个条目上传到数据库时,都可以编写一个Lambda函数来将数据装载到数据仓库(如Amazon Redshift)中,以便以后进行分析。Wood说,许多客户使用Lambda将AWS服务“粘合”在一起,并执行报告、调度和修改数据以准备分析的任务。

伍德说,另一个主要的用例是物联网世界,在那里需要大规模的实时响应。AWS最近通过其Greengrass平台引入了在物联网设备上运行Lambda函数的能力,该平台可以在低连接区域的设备上执行Lambda函数,这些区域不需要返回到云数据中心。雷竞技电脑网站一个安全摄像头可以运行Lambda并在每次检测到运动时记录数据并将其发送到数据库。没有虚拟机服务器一天24小时无所事事;事件驱动的代码只在触发时运行。AWS的客户FireEye表示,通过使用Lambda而不是EC2实例,它节省了高达80%的VM价格

“Serverless是最简单的外包解决方案。它允许你花钱请人来管理服务器、数据库,甚至是你自己管理的应用程序逻辑Martin Fowler的博客。与serverless的最大区别是“您只需要为所需的计算付费,最低为100ms。”

不需要等待服务器启动,也不需要配置负载平衡。任务被无限地执行。Fowler认为,这种模型允许开发人员和公司测试想法,并将它们比其他模型更快地推向市场。

缺点

无服务器计算不是万灵药,它也有缺点。首先,这是一个非常不成熟的市场。Gartner研究主管Craig Lowery表示,大规模管理无服务器用例非常困难。缺乏协调各职能部门的管理工具。支持这项技术的安全、监控和优化软件还处于萌芽阶段。也许最重要的是,它要求开发人员以一种不同的方式编写应用程序。他解释说:“很多限制与软件设计上的架构限制有关。”

无服务器的函数也是无状态的。它们可以被重用和重新执行,但是它们不存储状态,它们执行它们的任务,仅此而已。供应商对FaaS平台的收费是每执行100万个功能收取1美分的一小部分,这说明了供应商如何鼓励开发人员计划运行他们的功能。“当你有很多功能的时候,管理起来就会很麻烦,”Lowery说。

还有一个关于供应商锁定的问题。Lowery指出,将构建在FaaS中的应用程序移植到另一个平台上(无论是在本地还是在另一个公共云中)并不容易。因为市场还很年轻,所以针对无服务器平台的工具是根据它们所处的环境定制的。AWS Lambda与许多其他AWS产品深度集成。Wood说,这是因为Lambda支持像Node这样的公共编程语言。js, Python和Java,这些代码可以转移出去。“没有特别的Lambda语言,”他指出。

总的来说,Lowery认为无服务器计算或FaaS是“现有虚拟机和容器计算范例的一个非常强大的版本”。Lambda是一个全新的东西。我想我们会看到很多人成功地创建了整个基于服务器的应用程序。与此同时,它并不适合所有的应用程序。“数据库将不会在Lambda中运行,或任何其他需要维护状态的应用程序中运行。

serverless市场

虽然AWS被认为是第一个推出无服务器计算平台的公司,但从那以后,其他主要的IaaS公共云提供商也纷纷落马。Wood甚至认为许多AWS服务是“无服务器的”,包括Lambda、S3以及它的NoSQL DynamoDB数据库和sql支持的Aurora数据库平台。这些产品中的每一个都不需要预先规划资源的使用,也不需要对基础设施进行持续的管理。

Lambda提供每月最多100万次的免费请求处理;此后,每100万次请求的费用为0.20美元。Lambda还根据在计算过程中花费的时间量收费,使用平台的速度为每GB每秒0.00001667美元,四舍五入到最接近的100th一个毫秒。

微软Azure的Azure功能产品也有相同的价格2016年11月上市。谷歌功能处于测试阶段,每个月免费提供多达200万个请求,每个事务的成本稍微高一些,但计算率较低。IBM为OpenWhisk提供的免费层包括每月40万gb -s,随后的每个GB-sec每月为0.000017美元。OpenWhisk的执行官Heredia说,IBM的无服务器计算平台的最大区别在于它是开源的,托管在Apache软件基金会中。从理论上讲,这使客户能够在任何他们想要的地方运行OpenWhisk代码。

市场上也有一些初创公司尝试提供无服务器计算平台、组件和管理工具。也许最著名的是铁。io提供了一个基于Docker容器的无服务器计算平台。

Gartner分析师洛厄里表示,这个市场非常年轻,还没有赢家和输家之分。但是,AWS有一种产品在市场上普遍可用的时间最长。他说,真正的关键是确定无服务器系统的用途。FaaS可以成为将特定供应商的云中的各种服务“粘合”在一起的强大工具。另一方面,其他物联网事件驱动的用例可能没有绑定到特定供应商的云。

加入网络世界社区有个足球雷竞技app脸谱网LinkedIn对最重要的话题发表评论。
相关:

版权©2017Raybet2

工资调查:结果在