为什么我们要使用无服务器架构

简介: 本文讲的是为什么我们要使用无服务器架构【译者的话】这篇文章介绍了无服务器架构与传统架构相比的优势,与此同时,也指出了无服务器架构并非适用于所有的应用,但了解这种架构模式对于开发者或者企业来说都是大有裨益的。
本文讲的是为什么我们要使用无服务器架构【译者的话】这篇文章介绍了无服务器架构与传统架构相比的优势,与此同时,也指出了无服务器架构并非适用于所有的应用,但了解这种架构模式对于开发者或者企业来说都是大有裨益的。

【3 天烧脑式基于Docker的CI/CD实战训练营 | 北京站】本次培训围绕基于Docker的CI/CD实战展开,具体内容包括:持续集成与持续交付(CI/CD)概览;持续集成系统介绍;客户端与服务端的 CI/CD 实践;开发流程中引入 CI、CD;Gitlab 和 CI、CD 工具;Gitlab CI、Drone 的使用以及实践经验分享。

无服务器架构并不适用于所有的app,但这篇文章将帮助您了解,如果使用这种架构,将会有哪些是值得您期待的。
如今谈论无服务器架构,大多数都是关注其与function-as-service的集成、如何编排访问请求,以及基于无服务器架构的故障排查工具等等。然而,没有多少精力关注在为什么选择无服务器架构,而不是传统架构背后的深层次原因,这是为什么呢?

降低开发成本

使用无服务器架构(serverless)的首要原因,正如其名字所表明的那样,将服务器从我们的关注项中移除。我们不得不承认,并没有真正的无服务器(无服务器仅仅只是对托管在云端的服务器的另一种说法)的应用,选择一种无服务器架构的实现,获得的好处只是不必开发服务器端代码罢了。

在传统的客户端 - 服务器应用程序中,基于数据的所有API和端点都需要由开发人员实现。开发方式包括通过使用像Rails这样的框架自己编写代码,或者通过利用可将底层调用转换为可调用的REST API的第三方工具来实现。

使用无服务器架构,您可以将大量的后端技术工作交给第三方,从而无需关注将Web应用推向市场的复杂工作。这显着降低了开发成本。您的开发人员可以专注于用户界面和用户体验,您的应用最具特色的地方将会更具有吸引力。

减少DevOps和维护成本

涉及到应用的开发和托管Web应用的直接成本很多。其中包括开发人员薪酬,托管费用,域名注册费用,数据传输费用等。此外,对于web应用程序,您通常需要保持服务器不间断运行,以处理一天中任何时间的访问请求。这意味着对于访问频率低的应用程序,每天只能运行一个小时的计算时间,您仍然需要为您的应用程序可用但尚未使用的其他二十三小时付费。

使用像 AWS Lambda 这样的功能即服务实用程序,您可以通过确保只有在应用程序处于活动状态时付费,才能进一步降低成本。功能即服务运行在按执行次数计费的模式,所以您只需要在代码实际被调用时支付托管和计算资源。许多Web应用程序通常是空闲的,因此可以显著节省成本。

虽然您可以使用Docker等产品在Heroku上托管容器来获得类似的收益,但您将无法获得功能即服务的无服务器提供商允许的纯粹级别,该服务器只提供一个实例, 实际上调用了一个单独的函数。通过确保您的代码仅在实际需要时处于活动状态,这种间歇性安装和卸载容器可以减少托管和资源使用成本。

减少面市时间

除了减少代码量和运营成本外,还可以减少交付时间。通过牺牲硬件和服务器端的灵活性,您可以通过将复杂性移到客户端来减少开发应用程序所需的时间,将您的努力专注到代码库中的单一语言中。

此外,您不需要找到提供商,运行起来服务器,配置Web服务器软件,并让您的应用程序在机器上运行,最终会是一个更简单的问题。您还可以获得更多的主机选择,因为无服务器应用程序只需要一个可以为其终端用户提供文件的CDN,而不是在处理来自网络用户的请求,运行编程语言的运行时的特定Web服务器。

最后,通过将您的应用程序的服务器端交给无服务器的提供商,您可以通过允许第三方管理应用的安全来提升安全性。通过这种方式,可以减少对web服务器、数据库服务器的安全防护,以及在传统客户端-服务器应用程序中至关重要的任何其他后端安全性问题所需的工作。

结论

虽然许多应用程序由于特定的需求或者某些其他原因而无法在无服务器环境中运行,但与其传统的客户端/服务器应用相比,支持无服务器架构的应用程序具有许多优势。通过使用无服务器的提供程序,您可以减少所需的代码量,让第三方基于您的数据源构建API。

您还可以通过允许您的代码以更间歇的方式运行,仅在需要时才启动(和终止)实例,从而降低运营成本。

基于这两个好处,以及其他尚未被发掘的优势,您可以看到产品上市时间缩短,因为您可以专注于外观、感觉、以及您的应用程序基本的交互行为。虽然无服务器架构可能不适合您,但对于越来越多的公司来说,这是一个可行且明智的选择。

原文链接:Why Go Serverless? (翻译:付辉)

原文发布时间为:2017-07-10

本文作者:付辉

本文来自云栖社区合作伙伴Dockerone.io,了解相关信息可以关注Dockerone.io。

原文标题:为什么我们要使用无服务器架构

相关实践学习
【AI破次元壁合照】少年白马醉春风,函数计算一键部署AI绘画平台
本次实验基于阿里云函数计算产品能力开发AI绘画平台,可让您实现“破次元壁”与角色合照,为角色换背景效果,用AI绘图技术绘出属于自己的少年江湖。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
8月前
|
存储 机器学习/深度学习 数据库
阿里云服务器X86/ARM/GPU/裸金属/超算五大架构技术特点、场景适配参考
在云计算技术飞速发展的当下,云计算已经渗透到各个行业,成为企业数字化转型的关键驱动力。选择合适的云服务器架构对于提升业务效率、降低成本至关重要。阿里云提供了多样化的云服务器架构选择,包括X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等。本文将深入解析这些架构的特点、优势及适用场景,以供大家了解和选择参考。
1269 61
|
9月前
|
存储 运维 Serverless
千万级数据秒级响应!碧桂园基于 EMR Serverless StarRocks 升级存算分离架构实践
碧桂园服务通过引入 EMR Serverless StarRocks 存算分离架构,解决了海量数据处理中的资源利用率低、并发能力不足等问题,显著降低了硬件和运维成本。实时查询性能提升8倍,查询出错率减少30倍,集群数据 SLA 达99.99%。此次技术升级不仅优化了用户体验,还结合AI打造了“一看”和“—问”智能场景助力精准决策与风险预测。
876 69
|
5月前
|
运维 监控 安全
“没服务器了,那我这运维是白干了吗?”——无服务器架构对运维的冲击与转机
“没服务器了,那我这运维是白干了吗?”——无服务器架构对运维的冲击与转机
150 0
|
6月前
|
存储 安全 虚拟化
全面解析服务器虚拟化:云计算时代的核心技术架构
服务器虚拟化是云计算的核心技术,通过资源池化提升IT效率。本文详解其原理、部署优势及在数字化转型中的关键作用,涵盖技术架构、应用场景与选型指南,助力企业构建高效灵活的云环境。
698 0
|
8月前
|
数据采集 运维 监控
Serverless爬虫架构揭秘:动态IP、冷启动与成本优化
随着互联网数据采集需求的增长,传统爬虫架构因固定IP易封禁、资源浪费及扩展性差等问题逐渐显现。本文提出基于Serverless与代理IP技术的新一代爬虫方案,通过动态轮换IP、弹性调度任务等特性,显著提升启动效率、降低成本并增强并发能力。架构图与代码示例详细展示了其工作原理,性能对比数据显示采集成功率从71%提升至92%。行业案例表明,该方案在电商情报与价格对比平台中效果显著,未来有望成为主流趋势。
339 0
Serverless爬虫架构揭秘:动态IP、冷启动与成本优化
|
9月前
|
Cloud Native Serverless 流计算
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
513 12
|
10月前
|
存储 机器学习/深度学习 应用服务中间件
阿里云服务器架构解析:从X86到高性能计算、异构计算等不同架构性能、适用场景及选择参考
当我们准备选购阿里云服务器时,阿里云提供了X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等多种架构,每种架构都有其独特的特点和适用场景。本文将详细解析这些架构的区别,探讨它们的主要特点和适用场景,并为用户提供选择云服务器架构的全面指南。
1082 18

热门文章

最新文章