前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >容器部署和无服务器计算那些事儿

容器部署和无服务器计算那些事儿

作者头像
程序那些事儿
发布于 2023-03-07 03:20:14
发布于 2023-03-07 03:20:14
3.4K0
举报
文章被收录于专栏:程序那些事儿程序那些事儿

对于网站代码托管,目前有两种方式,一种是 docker 容器部署,一种是无服务器计算部署。

那么对于一个企业应该选择哪种方案呢?无服务器计算和容器之间有哪些重要的区别呢?接下来我们简单谈论一下。

什么是无服务器?

使用无服务器计算,工作负载实际上运行在承载幕后功能的服务器上。但是,服务器不由开发人员管理。更准确地说,是开发人员考虑的事情里面是没有考虑到关于服务器的相关概念。

无服务器函数通常是具有单一目的的小型、轻量级的编程函数。这个单一的目的可以是任何东西,比如从数据库中获取客户的详细信息,发送邮件,上传图片,裁剪图片等。

大多数云提供商都提供无服务器计算功能,他们将其称为功能即服务 (FaaS)。领先的产品是 AWS Lambda、Azure Functions 和 Google Cloud Functions,Aliyun Function Compute,每一个产品都在相关的生态系统中进行了许多功能集成。它们非常适合提供 API 接口或微服务。

什么是容器?

容器可以简单地比喻成在海上运输货物的集装箱,它们彼此是独立的。

容器是一种独立的、轻量级的虚拟化技术。它们与虚拟机 (VM) 类似,不同之处在于它们仅虚拟化来宾操作系统 (OS) 和应用程序,而不是整个计算机。容器比虚拟机设置起来更快、更容易。

一旦有人构建了一个容器,他们就可以使用 Docker 等服务来部署和运行它。大多数情况下 DevOps 团队最常将容器部署到 Kubernetes 集群。

容器是将现有的单体应用程序转换为云原生应用程序的最佳方法之一。为了尽可能高效,容器还应该将应用程序分成更小的部分。

无服务器 vs 容器

在大多数情况下,无服务器功能和容器都不需要开发人员担心服务器或托管其应用程序的基础设施。主机硬件和操作系统与来宾应用程序和操作系统分开。DevOps 团队不需要考虑无服务器功能或容器使用什么硬件。

通过简单地配置更好的硬件(例如更强大的 CPU、更多内存或更快的网络能力),这两种托管选项都是可扩展的。

将容器与本地基础设施一起使用时例外。在这种情况下,硬件配置是一个手动过程,通常由专门的基础架构团队处理。

还可以根据流量等需求进行扩展。Kubernetes 是一个开源编排系统,可以在几秒钟内水平扩展容器。同样,许多 FaaS 产品可以根据路由到应用程序的请求数量等重要指标进行自动扩展。

无服务器和容器都是弹性的,因此它们可以在需要时进行伸缩。然而,使用容器的 DevOps 团队需要像 Kubernetes 这样的容器编排软件来根据给定的标准自动扩展。

无服务器计算通常是具有单一职责的小型、独立的功能块。它们通常是短暂的,只运行几分钟,如果它们是面向客户的,则运行几秒钟。同时,容器最适合更广泛、长时间运行的应用程序或具有多种职责的应用程序。

当需要摆脱传统的本地基础架构,使现有的单体应用程序部署到云上,并且希望容器实例可以全天候运行的时候,这个时候选择容器会更好。

而对于一些不需要始终运行,只需要请求的时候进行运行计算的服务则更推荐使用无服务计算。

容器让您保持供应商中立。这种中立性的副作用是容器支持任何语言,而无服务器应用程序仅限于少数语言选择。此支持的语言列表因每个提供商而异。

当您决定无服务器还是容器最适合您的应用程序时,最好将上面列出的所有因素都考虑在内。但是,您的应用程序架构的大小和结构应该是影响您决策的主要因素。并确保在您的决定中包括其他因素,例如定价。

您可以部署一个小型应用程序,或者我们可以轻松地将其拆分为多个较小的微服务作为无服务器应用程序。另一方面,更大、更复杂的应用程序可能更适合作为容器化应用程序。紧密耦合、不易分解为小型微服务的服务集是容器的有力候选者。

由于无服务器产品的限制,容器可能是某些应用程序的更好选择。

但您也不一定非要选择其中一个。无服务器和容器不是相互排斥的。您可以在需要的地方使用容器,在有意义的地方结合无服务器,并享受两全其美的体验。正如我们之前提到的,甚至还有用于托管容器的无服务器产品,旨在弥合这两种选择之间的差距。

结论

无服务器和容器都是创建可扩展云原生应用程序的不错选择,可让您更快地进行创新。

几乎所有无服务器解决方案都支持事件触发器,这意味着它们非常适合管道和顺序工作流。

无服务器总是依赖于第三方供应商,因此更换云提供商可能会让人头疼。

其实本质上也可以通过 docker 容器来构建一个无服务器 serverless 平台

这两种服务都用于开发微服务,但适用于不同的需求。如果你想减少应用程序管理并且不关心架构,那么 Serverless 是最好的选择。如果您想在特定系统架构上部署应用程序并对其进行控制,那么 Docker 容器是最佳选择。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序那些事儿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
2019年云计算发展状态
当企业在其中一个大型公共云IaaS平台上构建云原生应用程序时,企业可以获得数百种API可访问服务的额外优势,这些服务可能是最令人兴奋的部分。企业可以选择利用机器学习库、物联网平台、应用程序监控解决方案、大数据分析、区块链服务、数据集成解决方案。
静一
2019/08/14
8460
无服务器计算简介:第1部分
最近大肆宣传的技术趋势是无服务器计算。有些人可能会认为(顾名思义)无服务器计算中没有服务器。有些服务器运行我们的代码,但这些服务器在基础架构中不可见,并且不需要开发或运营团队进行管理,处理或配置。
February
2018/11/09
2.2K0
无服务器架构的开源框架:OpenFaaS、Knative等等
作者:Ran Ribenzaft,Epsagon联合创始人兼首席技术官。最初发表在Epsagon博客上。
CNCF
2020/04/20
8.3K0
2024年无服务器计算与事件流状况报告
将事件流与无服务器计算相结合,常常能产生一个高效低成本的解决方案,用于处理流数据,极大地减少了基础设施管理和维护的复杂性。这种协同作用使开发人员能更专注于应用程序逻辑,而减少对基础操作问题的关注,从而加快开发速度。
云云众生s
2024/03/28
2230
无服务器的十大属性
无服务器计算或函数即服务(FaaS)正在不断,亚马逊正在通过将Lambda扩展到边缘设备和内容分发网络来推动创新。IBM, Microsoft和Google在公共云中拥有自己的FaaS产品,有超过六个开源无服务器项目正在引起开发人员的注意。预计今年将出现这一细分市场中出现的新平台。
lyb-geek
2022/03/10
1.5K0
应用技术架构 —— 无服务器架构
2012 年,iron.io 首次提出 Serverless 概念。2014 年,AWS 发布 Lambda 开启 Serverless 商业化时代,AWS Lambda,最早被大众所认可的 Serverless 实现。随后各大云厂商争相推出自己的 Serverless 服务、框架或工具。
腾讯云 CODING
2022/03/16
2.1K0
应用技术架构 —— 无服务器架构
无服务器架构,云计算的下一个纪元
传统上,Web应用程序通常部署在Web服务器上。为了使应用程序在服务器上运行,可能需要花费数小时来下载、编译、安装、配置和连接各种组件。计算机的操作系统也需要不断进行升级和修补,以解决安全漏洞。而管理服务器是一项非常耗时的工作,通常需要专门且经验丰富的系统操作人员,这让很多工程师感觉到身心俱疲。
SDNLAB
2020/03/27
1.8K0
无服务器应用程序开发的最新趋势
作者 | Ankur Kumar 译者 | 刘志勇 策划 | marsxxl 无服务器计算已经在主流应用中站稳脚跟,并开始出现在企业组织的技术路线图中。研究公司和业界领袖预测,在 2022 年无服务器的采用将会有更大的发展势头。虽然在存储、计算和网络等基础设施要素方面,无服务器有不同的方面,但是本文主要讨论无服务器应用开发的最新趋势。 随着人们越来越关注将运营方面的工作交给云服务提供商或以平台为中心的解决方案,无服务器架构将作为一种 功能即服务(Function-as-a-Service,FaaS)的编程风
深度学习与Python
2023/03/29
1.3K0
无服务器应用程序开发的最新趋势
Serverless当打之年
当前大多数公司在运营应用产品时,无论是选择公有云还是自建的数据中心,都会面临服务器数量预估、存储容量规划和数据库的选型等问题。同时需要在基础设施之上部署依赖软件,以运行应用程序。当前是否存在一种简单的架构模型能够满足我们这种应用场景?当然,这个架构已经存在许久,它就是今天软件架构世界中很热门的一个话题——Serverless。
zouyee
2021/02/01
6710
Serverless当打之年
关于无服务器计算,您需要知道的10件事
如果您阅读了2017年有关于IT特别是云计算方面的各种预测,您很有可能碰到“无服务器计算”这一术语。早在2014年亚马逊的网络服务(AWS)已推出了第一大无服务器计算服务——AWS Lambda。2016年,其他主流云提供商也跟进了此潮流。现在这种新型的云计算已为新的一年蓄势待发了。 事实上,Gartner在其2017年的十大战略技术趋势里就提到过无服务器计算。该公司认为无服务器是网格式的应用和服务架构趋势的一部分,并解释说:“网格式的应用与服务架构(MASA)是一种多通道的解决方案架构,它利用云和无服务器
静一
2018/03/27
9600
关于无服务器计算,您需要知道的10件事
无服务器体系结构简介
无服务器架构和函数即服务(FaaS)是当下云计算领域的大热门。除了微软和亚马逊以外,还有很多厂商提供FaaS。本文对无服务器体系结构进行了简短的介绍,并试图解释什么是无服务器体系以及为什么我们需要它。
PALIN
2018/01/11
2.3K0
无服务器体系结构简介
云计算的下一个风口——“无服务器计算”
采用无服务器计算技术有几个明显的优势: 敏捷——由于开发人员在使用服务器时不部署、管理或扩展服务器,因此组织可以放弃基础设施管理。这极大地减少了操作开销。无服务器与微服务架构高度兼容,这也带来了显著的敏捷性好处。 可伸缩性——无服务器的一大优势是它所支持的可扩展性,升级和添加计算资源不再依赖于DevOps(运维)团队。没有服务器的应用程序可以快速、无缝地、自动扩展,以适应流量峰值;反之,当并发用户数量减少时,这些应用程序也会自动缩小规模。  计费模式——在使用无服务器平台时,你只需要为你需要的计算资
BestSDK
2018/03/02
5.5K0
云计算的下一个风口——“无服务器计算”
容器简介
容器是云原生计算的基石之一。它们类似于早期的虚拟机(例如 VMware 提供的虚拟机),但轻量级得多。
云云众生s
2025/02/06
1460
《前端Serverless:面向全栈的无服务架构实战》-- 1.Serverless综述(笔记)
IaaS:Infrastructure as a Service,基础设施即服务。
爱学习的程序媛
2022/10/27
8820
《前端Serverless:面向全栈的无服务架构实战》-- 1.Serverless综述(笔记)
互联网十万个为什么之什么是云原生?
云原生是一种现代化的软件开发和部署方法,旨在充分利用云计算的优势,提高应用程序的可伸缩性、弹性和可靠性。
linus_lin
2024/09/06
1310
互联网十万个为什么之什么是云原生?
云原生架构的核心技术(微服务、DevOps、容器云、Service Mesh、Serverless、声明式API)
读完本文,你将对云原生下的核心概念微服务、DevOps、容器云、Service Mesh、Serverless、Immutable Infrastructure、Declarative-API等有一个详细的了解,帮助你快速掌握云原生的核心和要点。
鱼找水需要时间
2023/02/16
9K0
云原生架构的核心技术(微服务、DevOps、容器云、Service Mesh、Serverless、声明式API)
【玩转腾讯云】我的 Serverless 实战——引领云计算的下一个十年
以前很多开发者都是采用的单体架构,为了保证服务的稳定性,只需要维护一台服务器及数据库就可以啦,但是随着业务的增长会面临两个问题,如果流量比较大,这个服务器可能顶不住这么大的流量,其次硬件啥的损坏也会导致整个系统瘫痪。
孙叫兽
2021/05/09
7990
【玩转腾讯云】我的 Serverless 实战——引领云计算的下一个十年
关于容器、微服务、docker的十大问题
容器的运行无法简单参考虚拟机的实践经验。例如,几乎任何工作负载都可以立即虚拟化,但是有些工作负载适合容器化部署,有的则不适合。
FB客服
2019/10/22
7240
(译)无服务器架构
无服务器运算,或者简单说无服务器,是软件架构界的一个新热点。三大云——亚马逊、谷歌以及微软都在无服务器方面下了重注,我们会看到很多的书籍、开源项目、会议以及软件供应商,都不约而同的关注这一主题。但是什么是无服务器?是否值得重视?为什么值得重视?本文中我希望能在这一问题方面给读者一些启迪。
崔秀龙
2019/07/23
3.3K0
(译)无服务器架构
聊一聊无服务器与微服务架构的奥秘
微服务和无服务器架构是云原生计算世界中的热门话题之一,虽然大多数人认为这些架构类似,但它们在软件开发中能够发挥出不同的作用。本文将概述了微服务和无服务器架构的区别以及如何相辅相成。
TARS基金会
2022/04/18
1.4K0
聊一聊无服务器与微服务架构的奥秘
推荐阅读
相关推荐
2019年云计算发展状态
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档