SolarWinds:什么是无服务器架构?它有哪些优点和缺点?

作者 | SolarWinds首席极客 Chrystal Taylor

供稿 | SolarWinds

随着IT行业的快速发展和网络带宽的不断消耗,人们对计算和数字存储的需求也越来越大。在此背景下,云计算技术迅速发展,满足了从大型企业到个人用户对高性能计算能力的应用需求。艾媒咨询数据显示,2021年中国云计算市场规模达到2330.6亿元,预计2022年将达到2983. 4亿元。

无服务器架构的兴起与云计算技术的进一步发展密切相关。作为当今的行业热点之一,无服务器架构正在市场上迅速发展。

但无服务器架构这个说法容易造成一些误解。这个术语的字面意思是应用不在任何服务器上运行,而实际上并非如此。无服务器架构指的是谷歌、亚马逊网络服务(AWS)或微软Azure等云服务提供商提供和管理后端基础设施,这种方法有其自身的优点和缺点。无服务器架构有时也被称为功能即服务(FaaS)或无服务器计算。Kubernetes等服务现在已经十分流行,许多公司都花钱把自己的应用托管在其他服务器上。

无服务器架构的优点

无服务器架构的优点之一是企业机构不用管理运行应用的后端基础设施。例如开发人员不必担心容量规划问题,因为有人会为他们解决。云服务提供商提供自动化的无服务器架构,这种架构可以在必要时提供更多的资源或缩小规模,这就又为开发人员减少了一项待办任务。开发人员不必负责维护后端基础设施,包括配置和扩展等,可以将更多的时间用于其他更有意义的项目。

这种弹性为企业机构解决了容量规划等掌管服务器时所需要担心的问题。而且企业不负责后端基础设施,因此也不需要在服务器崩溃或出错时进行修复。云服务提供商所提供的自动扩展和调试功能,帮助无服务器架构成为一个值得投资的项目。

无服务器架构的另一个优点是成本,可能是一个物有所值的选择。节省团队的时间就是节省资金,团队花在后端基础设施维护上的时间越少,企业减少的成本就越多。此外,使用无服务器架构的企业不需要一个完整的团队来管理服务器,因此开发人员不必是服务器专家,这使企业机构的招聘条件变得更加宽松。

无服务器架构的缺点

虽然无服务器架构有许多优点,但在将一切迁移到云之前,企业也应该考虑这种架构的一些缺点。并非所有经过开发流程的应用都适合成为无服务器应用。

由于无服务器架构的性质,在上面运行的应用无法被监控。服务器不属于自己,企业机构无法完整地看到上面所运行的一切,也就更加难以衡量一个应用的性能。同时,他们也无法轻易看到性能问题的发展趋势,或主动预防问题。比方说,因为不负责后端,企业机构无法深入研究调查日志。对于企业机构来说,转移这项责任在某些方面可能是件好事,但不好的方面是他们无法看到关键性能分析,也无法了解服务器上的情况究竟如何。

无服务器架构的另一个潜在缺点是安全问题。由于受攻击面大于企业通常使用的内部服务器,无服务器应用可能会面临更大的安全风险。同样,这也取决于云服务提供商和第三方服务所采取的措施与企业安全能力的比较结果。如果企业机构认为自己的服务器安全性不如AWS Lambda,那么与云供应商合作更加明智。

资源限制也可能是无服务器架构的缺点之一。虽然无服务器架构具有弹性,可以通过加速和减速来为应用分配资源,但它是有限制的。如果一家企业机构的应用大到超过这些限制,那么可能就不适合使用无服务器架构。

某些应用在设计上不适合成为无服务器应用,所以无服务器架构并非适合每一个用例。如果根据应用所使用的资源来定价,有些应用会不断消耗所获得的计算资源,使无服务器架构的成本激增。此类应用会占用越来越多的资源,而企业机构必须为此买单。

无服务器架构的应用场景

无服务器架构的主要应用场景之一,是组织有一个被设计为运行代码和执行触发型任务的应用程序。如果应用中的任务需要由用户的活动触发,那么企业机构往往会将该应用放在无服务器架构上。由于该应用比较被动,必须在触发事件发生后才会运行,所以不会占用超过企业机构承受范围的资源。这些“设定后就可以忘记”的应用最适合托管在无服务器架构上。

此外,无服务器架构也适用于持续集成/持续交付(CI/CD)项目。开发人员能够在生产中不断更新代码,不必担心更新服务器,因此无服务器架构非常适合这类项目。这种实时更新代码的能力至关重要。

无服务器架构的未来发展趋势

技术专家一直在寻找新的流程改进方法,无服务器架构也不例外。无服务器架构目前还是一种小众的方法,但它有继续发展的潜力。我们现在所拥有的会在未来变得更好,无服务器架构的可预测性和安全性希望会在未来得到改善。

无服务器架构还需要解决可靠性问题。目前,追求可靠性的企业机构对无服务器架构望而却步,他们更倾向于传统的本地服务器、云托管(但不自有)解决方案或微服务,这样可以对所发生的事情拥有更多的控制权。

由于开发者社群越来越多地转向CI/CD管道和开发运维,无服务器架构将继续成为一个重要的工具。开发人员一直在寻找避免因升级而停机的方法,而无服务器架构能够帮助他们实现这一目标。随着这一趋势的持续,无服务器架构将继续满足需求,而且可能会随着开发者社群的改变而继续发展。目前仍处于无服务器架构发展的初级阶段,虽然也许无法在短期内看到这项技术有任何进展,但我们仍保持信心。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/511643.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 寻找和为定值的多个数_算法笔记_037:寻找和为定值的两个数(Java)

1 问题描述输入一个整数数组和一个整数,在数组中查找两个数,满足他们的和正好是输入的那个整数。如果有多对数的和等于输入的整数,输出任意一对即可。例如,如果输入数组[1,2,4,5,7,11,15]和整数15,那么由于411 15&…

如何在零停机的情况下迁移 Kubernetes 集群

简介:本文将通过集群迁移的需求、场景以及实践方式,介绍如何基于阿里云容器服务 ACK,在零停机的情况下迁移 Kubernetes 集群。 作者:顾静(子白)|阿里云高级研发工程师;谢瑶瑶&#…

轻松理解 Docker 网络虚拟化基础之 veth 设备!

作者 | 张彦飞allen来源 | 开发内功修炼最近我又对网络虚拟化技术产生了浓厚的兴趣,迫切想搞明白在 Docker 等虚拟技术下,网络底层是如何运行的。不得不说,网络虚拟化技术是我给自己抛的又一个大坑。虽然我自认为把原生 Linux 网络实现过程理…

如何做好数字化体验管理,了解一下?

简介:本文主要分为三部分,第一部分是数字化体验的必要性,从数字化体验管理对业务的影响和数字化体验管理对企业的价值两个方面来介绍其必要性;第二部分,ARMS 在数字化体验管理上的产品能力介绍;第三部分&am…

java 中negate()_Java BigInteger negate()用法及代码示例

先决条件:BigInteger基础的java.math.BigInteger.negate()方法返回一个BigInteger,其值为(-this)。 negate()方法将更改BigInteger的单个位。用法:public BigInteger negate()参数:该方法不接受任何参数。返回值:该方法返回(-this…

深信服智能边缘计算平台与 OpenYurt 落地方案探索与实践

简介:本文将介绍边缘计算落地的机遇与挑战,以及边缘容器开源项目 OpenYurt 在企业生产环境下的实践方案。 作者:赵震,深信服云计算开发工程师,OpenYurt 社区 Member 编者案:在 5G、物联网等新技术的持续推…

云原生的本手、妙手和俗手

作者 | 步尔斯特来源 | 步尔斯特刚刚看到一个话题:Java大军,真的开始把目光从Spring Cloud转向云原生系的k8s Istio了么?乍一看,有一丝不解,Java大军?Spring Cloud?Kubernetes?Serv…

云原生背景下故障演练体系建设的思考与实践—云原生混沌工程系列之指南篇

简介:生产环境的突袭演练是我们迈出的艰难但有力的一步,锻炼了研发运维人员的应急响应能力,在真实用户场景下锤炼系统,推进了产品的轮班制度,提升了云原生底座的稳定性和竞争力。 作者:智妍(郑…

一般二叉树的顺序存储Java_100-顺序存储二叉树思路图解

2.网上数据结构和算法的课程不少,但存在两个问题:1)授课方式单一,大多是照着代码念一遍,数据结构和算法本身就比较难理解,对基础好的学员来说,还好一点,对基础不好的学生来说,基本上…

Spring Boot Serverless 实战系列“部署篇” | Mall 应用

简介:本篇中为各位讲述如何将 Mall 应用部署到函数计算平台上。为了让分析更有代表性,我选择了 Github 上 star 数超过 50k 的电商应用 mall 作为示例。 作者:西流 导读:Spring Boot 是基于 Java Spring 框架的套件,它…

押宝云原生,Ampere Computing打响服务器芯片变革关键一枪

“闯龙潭,越虎穴”这句话用来形容在服务器领域披荆斩棘的Arm架构服务器器芯片似乎最为合适不过。所谓“龙潭”“虎穴”指的便是雄霸服务器芯片市场数载的intel与AMD,而他们所属的x86架构,更是数据中心芯片领域的绝对主流。然而云原生时代的到…

java方法能不能继承方法_关于java:方法链接+继承不能很好地一起玩吗?

这个问题是在C环境中提出的,但我对Java很好奇。对虚拟方法的关注并不适用(我认为),但是如果您遇到这种情况:abstract class Pet{private String name;public Pet setName(String name) { this.name name; return this; }}class Cat extends …

阿里云实时数仓Hologres年度发布,解读数仓新趋势

简介:阿里云实时数仓Hologres年度发布,解读数仓新趋势。 1月7日,阿里云实时数仓Hologres发布最新版本,在成本、可用性、在线高可用等多方面进行了能力升级,行存吞吐提升100%,列存吞吐提升30%,支…

服务发现与配置管理高可用实践

简介:本篇是微服务高可用最佳实践系列分享的开篇,系列内容持续更新中,期待大家的关注。 作者:三辰|阿里云云原生微服务基础架构团队技术专家,负责 MSE 引擎高可用架构 本篇是微服务高可用最佳实践系列分享…

联想首次详解混合云Lenovo xCloud五大优势,如何打造智能化数字底座

多年积累之后,联想混合云品牌Lenovo xCloud主打云原生、智能运维、私有云、多云管理4大产品家族,9款通用解决方案,覆盖客户“建云、上云、用云和管云”的全部场景 6月10日,联想举办“弹性韧性悟性——多云混合时代Lenovo xCloud提…

阿里云何川:开放兼容的云,计算巢帮助合作伙伴云化升级

简介:保障业务稳定性,提供安全的云上互联网,助力合作伙伴实现规模化,打通多渠道分发。 12月21日,在阿里云弹性计算年度峰会上,阿里云弹性计算高级产品专家何川发表了题为《开放兼容的云,计算巢…

只用两个自定义 Hooks 就能替代 React-Redux ?

作者 | 👽来源 | 前端Sharing前言之前有朋友问我,React Hooks 能否解决 React 项目状态管理的问题。这个问题让我思索了很久,最后得出的结论是:能,不过需要两个自定义 hooks 去实现。那么具体如何实现的呢?…

java queue源码_Java高并发系列之ArrayBlockingQueue源码解析

JUC包下定义了一个接口:BlockingQueue。其实现类有ArrayBlockingQueue等。本文先来介绍一下ArrayBlockingQueue。从字面可以看出,ArrayBlockingQueue是一种基于数组的阻塞队列,阻塞队列在线程池中会经常使用到。首先来看看ArrayBlockingQueue…

圆桌对话:云时代下,企业运维面临的挑战与机遇

简介:四位企业运维大咖展开对话,讨论“云时代下,企业运维面临的挑战与机遇”。 编者按:上云,已经成为了企业势不可挡的选择。云计算所拥有的“软件定义一切”的特性,推动了敏捷弹性、DevOps、智能运维和基…

揭晓阿里云神龙团队拿下TPCx-BB排名第一的背后技术

简介:近日,TPC Benchmark Express-BigBench(简称TPCx-BB)公布了最新的世界排名,阿里云自主研发的神龙大数据加速引擎获得了TPCx-BB SF3000排名第一的成绩。TPCx-BB测试分为性能与性价比两个维度。其中,在性能维度,在本…