带你读《弹性计算—无处不在的算力》第三章:计算产品和技术3.7容器服务与弹性容器实例(一)

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 《弹性计算—无处不在的算力》第三章:计算产品和技术3.7容器服务与弹性容器实例(一)


在过去十年里,整个 IT 的基础设施发生了巨大的变化,从物理机、虚拟机再到容器,深刻地改变了企业获取和使用计算能力的方式。随着计算资源越来越细粒度、越来越弹性,IT 基础设施的维护成本持续下降。函数计算的出现,将云的弹性和效率提升到了更高层次。

在函数计算中,用户将业务逻辑抽象为函数(微服务)。函数计算平台负责管理服务器等基础设施,可靠地执行函数,例如根据函数负载动态分配计算资源、函数 / 用户级别的资源隔离、底层计算环境安全补丁升级等。有了函数计算,企业可以专注于业务层的创新,无须管理服务器等 IT 基础设施,大幅提高了产品迭代的效率,从而获得显著的竞争优势。

3.7.1 功能特点

函数计算具备以下特点。

事件驱动

函数计算通过事件驱动的方式和对象存储、日志服务、消息队列、API 网关等云服务无缝集成,用户只需要编写少量代码即可串联多个云服务,完成复杂的业务逻辑。例如用户上传图片到对象存储,就能够自动产生事件触发函数进行相应的处理。当前函数计算已经被大量云服务集成。典型的应用场景包括利用函数计算大规模并行处理对象存储数据,或者流式的处理消息队列、日志、数据库的增量数据。

丰富的计量模式,次秒级计量

函数计算提供了预付费(包年包月)和后付费(按量)两种模式。和其他类型的计算服务不同,函数计算的后付费真正做到了让用户不为任何闲置资源付费,即只有实际处理了用户的请求,才会计费;如果没有请求,则没有费用。针对动态变化的负载,用户能够无缝地结合两种计量模式,根据用户的实际使用情况来看,通常能有 10% - 90% 的成本降低。

实时弹性伸缩

函数计算根据用户的负载实时伸缩,管理底层计算资源。全自动的资源管理方式

不但减小了用户水位预估,资源扩缩容的复杂度,也提高了资源利用效率。

卓越的工程效率

在服务器等IT 基础设施由函数计算平台管理后,用户能够专注于应用层逻辑的编码、测试和运维。在实践中,在函数计算平台上采用微服务架构构建应用,用户服务的版本发布节奏通常从数月一次提升到数天甚至数小时一次。表3-3 对比了 Serverless Serverful 的差异。

3-3   Serverless Serverful 的差异

项目

Serverless 

Serverful 

资源水位规划和伸缩

由平台负责

用户负责预估资源需求,并以对资源的扩/ 缩容应对负载的动态变化

服务器等IT 基础设施的运维

由平台负责

用户负责操作系统安装、网络配置、安全补丁升级、故障机器下线等运维工作

监控报警

基础设施的监控由平台负责,并提供了开箱即用的应用维度监控报警

用户负责搭建监控报警系统,对基础设施和应用进行监控

开发测试成本

用户专注于应用层的架构和开发,不需要考虑底层基础设施的容错、弹性伸 缩等

用户需要同时开发测试基础设施和应用层的功能

功能上线速度

快,平台提供了灰度发布等功能

慢,用户需自行搭建版本发布系统



3.7.2 适用场景

函数计算能够弹性可靠地执行用户代码。通过和云端大量服务以事件驱动的方式连接,用户可以快速构建弹性高可用的云原生应用。典型应用场景包括以下几种。

数据大规模并行处理

通过函数计算和对象存储的集成,用户既可以通过事件增量处理对象存储上的新增数据,也可以创建大量函数实例并行处理存量数据,如图3-86 所示。

数据实时流式处理

通过函数计算和日志服务、消息队列等管道类云服务的集成,用户能够使用函数实时流式处理日志、消息或者物联网等场景下的数据,如图3-87 所示。


image.png

3-87  数据实时流式处理

移动和 Web 应用后端

函数计算提供 HTTP 触发器,用户用函数实现 HTTP/HTTPS 请求的处理逻辑, 实现弹性高可用的应用后端服务,如图3-88 所示。


开发运维自动化

通过定时触发器,用户能够用函数快速完成定时任务,无须管理执行任务的底层服务器。通过云监控触发器,用户可以接收 ECS 重启 / 宕机、OSS 对象存储流控等 IaaS 层服务的运维事件,并自动触发函数处理。

image.png

3-88  移动和Web 应用后端

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
21天前
|
Kubernetes 调度 Docker
深入探讨容器编排技术:从Docker到Kubernetes
容器编排在现代IT中日益关键,从Docker到Kubernetes,助力应用的自动化部署和扩展。Docker提供容器技术,打包应用及环境为镜像,通过引擎、镜像、容器、网络和存储组件实现隔离运行。Kubernetes作为高级容器编排平台,管理Pod(多容器集合),其核心包括API服务器、控制器管理器、调度器和Kubelet。Kubernetes集群由Master和Worker节点构成,实现Pod的高效调度和运行。
|
22天前
|
运维 Kubernetes 监控
构建高效自动化运维系统:基于容器技术的策略与实践
【4月更文挑战第19天】随着云计算和微服务架构的兴起,传统的运维模式正逐渐向自动化、智能化转型。本文将探讨如何利用容器技术构建一个高效、可靠的自动化运维系统,涵盖系统设计原则、关键技术选型以及实践经验分享。通过引入容器技术,我们可以实现应用的快速部署、弹性伸缩和故障自愈,从而提高运维效率,降低系统维护成本。
|
1月前
|
持续交付 开发者 Docker
深入了解 Docker:革命性的容器化技术
Docker,自2013年起,革新了软件开发和部署,解决了环境差异问题。这个轻量级容器技术基于Linux容器(LXC),提供应用程序隔离和环境一致性。Docker通过容器化实现快速部署、CI/CD集成和微服务架构。相比虚拟机,Docker更轻便,不需模拟完整操作系统。它简化流程,提升效率,促进了容器化技术的普及。
72 0
|
14天前
|
Cloud Native Linux 开发者
【Docker】Docker:解析容器化技术的利器与在Linux中的关键作用
【Docker】Docker:解析容器化技术的利器与在Linux中的关键作用
|
3天前
|
Kubernetes Java 调度
Java容器技术:Docker与Kubernetes
Java容器技术:Docker与Kubernetes
13 0
|
11天前
|
敏捷开发 运维 测试技术
构建高效自动化运维体系:基于容器技术的持续集成与持续部署实践
【4月更文挑战第30天】在数字化转型的浪潮中,企业对软件交付速度和质量的要求日益提高。自动化运维作为提升效率、确保稳定性的关键手段,其重要性不言而喻。本文将探讨如何利用容器技术构建一个高效的自动化运维体系,实现从代码提交到产品上线的持续集成(CI)与持续部署(CD)。通过分析现代容器技术与传统虚拟化的差异,阐述容器化带来的轻量化、快速部署及易于管理的优势,并结合实例讲解如何在实际环境中搭建起一套完善的CI/CD流程。
|
11天前
|
Linux 开发者 Docker
Docker容器化技术详解
【4月更文挑战第30天】Docker,一个开源的容器化平台,助力开发者通过轻量级容器打包应用及依赖,实现跨平台快速部署。核心概念包括:容器(可执行的软件包)、镜像(只读模板)、Dockerfile(构建镜像的指令文件)和仓库(存储镜像的地方)。Docker利用Linux内核功能隔离容器,采用联合文件系统构建镜像。广泛应用包括开发测试一致性、微服务部署、CI/CD以及本地到远程部署。通过安装Docker,编写Dockerfile,构建&运行容器,可实现高效灵活的应用管理。随着容器技术进步,Docker在云计算和DevOps中的角色日益重要。
|
11天前
|
运维 Kubernetes 持续交付
构建高效自动化运维系统:基于容器技术的持续集成与持续部署实践
【4月更文挑战第30天】 在快速发展的云计算时代,传统的运维模式已无法满足敏捷开发和快速迭代的需求。本文将介绍如何利用容器技术搭建一套高效自动化运维系统,实现软件的持续集成(CI)与持续部署(CD)。文章首先探讨了现代运维面临的挑战,接着详细阐述了容器技术的核心组件和工作原理,最后通过实际案例展示了如何整合这些组件来构建一个可靠、可扩展的自动化运维平台。
|
11天前
|
Kubernetes 安全 持续交付
现代软件开发中的容器化技术探究
本文探讨了现代软件开发中的容器化技术,重点介绍了Docker和Kubernetes这两个主流容器化平台的原理和应用。通过分析容器化技术的优势和挑战,以及在不同开发环境下的应用场景,读者可以更好地理解容器化技术在提升软件开发效率和部署灵活性方面的价值。
|
12天前
|
Linux Shell 虚拟化
【Linux学习】Linux 的虚拟化和容器化技术
【Linux学习】Linux 的虚拟化和容器化技术

相关产品

  • 容器计算服务