无状态和事件驱动
时间:2022-03-19 06:15:01 | 来源:行业动态
时间:2022-03-19 06:15:01 来源:行业动态
无服务器计算有两个显着特征,既有强大的吸引力,又面临着更广泛采用的障碍。
首先,无服务器功能是无状态的,这意味着没有用于交互的上下文。它们不存储历史记录,因此仅使用随附的信息处理每个请求。每次都像一块白板,但非常高效,因为你不需要应对重重的复杂应用逻辑, Wikibon分析师James Kobielus说。
另一个显着特征是无服务器是事件驱动的,意味着会对用户或程序生成的动作做出响应,事件可能包括查询明尼阿波利斯当前温度的请求、搜索引擎查询或数据库记录更新。
事件驱动的应用是非常高效的,因为在不使用的时候不会消耗资源。这种应用编程简单,易于扩展。你可以设置应用,这样如果有事件进来,那么功能运行起来。如果有一百万个时间进来,你就可以应对一百万个,Lowery说。但是,并非每个应用都可以被提炼为一系列无状态事件。
综合起来,这些让无服务器计算成为某些请求的理想平台,例如查看美国明尼阿波利斯的热或冷。然而,对于其他例如管理购物车或制作账单来说,并不是那么好用。
Kobelius说:有人点击购买,整套数据库和运行时功能做定价,最终确定订单,并发送确认。所有必须以严格的方式发生,带有状态和事务流,这使得它无法与无服务器执行相匹配。
目前尚不清楚是否会有新的工具和扩展程序让无服务器技术在更为传统的应用中变得可行。无状态应用可以扩展或改进以展示有状态的行为,就像容器一样,轻量级虚拟机可以抽象消除底层基础架构的差异。容器也是无状态的,但商业和开源扩展让容器可以用于上下文敏感的应用中。
微软的目标是消除功能即服务和平台即服务之间的界限,让开发人员能够混合搭配各种不同的平台。特别是,微软强调所谓的虚拟Kubelets,这个在12月推出的技术能够使容器运行各种功能或完整的应用,但有了微计费和自动基础设施配置,无服务器提供了很多企业客户想要的灵活性。AWS在11月底推出了Fargate,可以在不管理服务器或服务器集群的情况下运行容器。
微软Azure容器项目管理负责人Gabe Monroy在去年12月的KubeCon CloudNativeCon北美会议上表示:这实际是最好的无服务器,如果基础设施消失,我们将在基础设施领域开展工作。
Wikibon的Kobielus甚至认为,区块链这种去中心化的数字记账技术对数据库密集型场景中的无状态来说是一种补充。他说:你可以随时回滚一个完整叙述,关于谁在什么样的联合框架中调用了什么。
因此,无服务器的拥护者认为,这项技术有广阔的前景,特别是对于那些有着提升和转变心态的企业,他们试图将旧应用转移到一种新模式上,并积极拥抱构建和运行这些应用的新方法。
例如就在几年前,房利美(Fannie Mae)公司运行蒙特卡洛(Monte Carlo)模拟分析其抵押贷款组合的风险。现在,他们正在运行所谓的第一个在金融行业中使用无服务器的高性能计算平台。在大约2000万抵押贷款的模拟中,该系统的工作速度比以前快了4倍多。
我们认为没有任何固有的技术限制可以阻止任何主要工作负载在Lambda上的使用,AWS的Gilbert表示,他有趣地称Fannie Mae将无服务器当做云中的超级计算机。他说:无服务器将是最简单、最简单的,对许多客户来说是主流计算的首选方式。