SAE 2.0,让容器化应用开发更简单

本文涉及的产品
函数计算FC,每月15万CU 3个月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: SAE 2.0,让容器化应用开发更简单

作者:邵丹

云原生容器化应用托管模式的演变


云原生这个概念从提出,到壮大,再到今天的极大普及,始终处于一个不断演进和革新的过程中。云原生体系下应用的托管形态是随着企业应用架构在不断演进的。最早的应用大多是集中式、单体式的,应用通过优雅的分层来实现领域模型的共享和更细致的模块拆分。随着互联网的爆炸式发展,分布式的架构逐渐取代集中式架构,云原生应用托管也经历了 4 个阶段的演进。



第一阶段:容器化

Docker 的出现和极大普及,通过集装箱式的封装,标准化开发和运维使得大规模、跨语言的分布式应用大规模落地成为现实。


第二阶段:全面拥抱 Kubernetes

在此之后,微服务架构得以更大规模的流行开来,随之而来的是企业需要运维的基础设施日益复杂、需要管理的容器数量呈现几何式增长。Kubernetes 一方面屏蔽了IaaS 层基础架构的差异并凭借优良的可移植性,帮助应用一致地运行在包括数据中心、云、边缘计算在内的不同环境; 另一方面,凭借优秀的开放性、可扩展性以及活跃开发者社区,在大规模容器编排之战中脱颖而出,成为分布式资源调度和自动化运维的事实标准。


第三阶段:Serverless Kubernetes

尽管 Kubernetes 带来了众多好处,但是在生产环境中落地 Kubernetes,持续保障系统的稳定性,安全性和规模化成长,对于绝大部分企业来说,依然充满挑战。在这样的背景下,Nodeless Kubernetes 进入大家视线:在保留完整 Kubernetes 能力的基础上,将复杂的运维和容量管理工作下沉到云基础设施底座。


第四阶段:Serverless 容器化应用托管

尽管 Serverless Kubernetes 极大的减轻了企业运维 Kubernetes 的负担,但 Kubernetes 自身的复杂性和陡峭的学习曲线依然让人望而生畏,如何让用户的应用跑在 Kubernetes上,既能享受到 Kubernetes 带来的诸多技术红利,又能尽可能 0 改造,成为又一个亟待解决的问题。



Serverless 应用引擎 SAE 诞生


Serverless 应用引擎 SAE 就是在这个背景下诞生的,它是一款零代码改造、极简易用、自适应弹性的应用全托管平台。SAE 让您免运维 IaaS 和 K8s,秒级完成从源代码/代码包/ Docker 镜像部署任何语言的在线应用(如 Web /微服务 /Job任务)到 SAE,并自动伸缩实例按使用量计费,开箱即用日志、监控、负载均衡等配套能力。


SAE 的出现解决了众多企业想用 K8s,但是又上手困难的问题,可以用非常低的门槛享受到 K8s 的技术红利,并且按需使用、按量计费的收费模式以及自适应的弹性能力,也为企业降本增效提供了强大助力。



Serverless 应用引擎 SAE2.0 全面升级


今年,Serverless 应用引擎 SAE 来到了 2.0 时代,实现了全面升级。首先是弹性能力方面:


弹的更快

在保障完全兼容企业开发习惯的基础上,SAE2.0 的弹性效率有了非常大的提升,从秒级到百毫秒级,并且开始支持缩短到 0 的能力。


缩容到 0

即在无业务流量情况下不产生费用,能够让资源利用率无限贴近请求资源的负载。


弹后更省

在做了大量的用户调研之后,我们发现很多企业的应用,在没有请求或者请求处理完成的时候,是没有必要保持大量资源的。那么我们就可以在请求处理完之后,释放掉它的 CPU 或者仅保留极低的 CPU 资源,并维持内存状态,达到资源的保活和实例的保活等目的,这就是闲置计费。


闲置计费最重要的目的,是利用 CPU 的释放来节省 CPU 的费用;并且通过保持内存,就可以在下次实例启动的时候实现毫秒级的恢复,做到最大限度的节省资源的同时,还能保证能够有很低的延时。


弹的更稳

通过平台侧全链路的优化,让延时降低了 45%,运行时性能波动下降至 7%。在弹得更细,弹得更稳的同时,稳定性也做到最佳。



SAE2.0 内置有流量网关,可以根据每个实例配置对应的单实例的并发度,类似于我们平常说的并发数。当并发上来的时候,可以根据他实际的请求数,去扩容对应的实例。


当我没有请求的时候,则不会对 CPU 进行计费,也就是上面说的闲置计费。而当请求来的时候,会根据实际的并发数先去分配 1 个实例,当这个实例填满之后,再去扩容下一个实例,这样就实现了在流量波动的时候,根据实际流量进行自动扩缩容的能力。



SAE2.0 为 Web 应用提供了多版本流量配置的能力。它可以对每个版本进行独立的网络配置。根据业务需要,可以动态配置多个版本对应的流量配比,并且不需要去指定它对应的实例个数,实例个数是根据配置的实例上限和流量配比,通过自动弹性能力扩缩出来的,这样就实现了多版本的并存。


除此之外,在开发体验方面,SAE2.0 无需任何编码改动即可将传统单体架构或微服务架构升级至 Serverless 应用架构。并凭借一键部署秒级应用创建能力,实现应用的高效发布。同时,SAE2.0 还具备了 CLI、S2A 等平台工程能力,大大提升了用户的研发效能。此外,它还具备 Knative Adapter 功能,使得 Knative 的应用程序能够非常顺畅地在 SAE2.0 上发布。

相关实践学习
1分钟部署经典小游戏
本场景介绍如何使用Serverless应用引擎SAE 1分钟快速部署经典小游戏。
SAE的功能与使用入门
欢迎来到《SAE的功能与使用入门》,本课程是“云原生Serverless Clouder认证“系列中的第三阶段。课程将向您介绍阿里云Serverless应用引擎(SAE)服务相关的概念、特性与使用方式。通过课程将带您逐步深入探索Serverless世界,借助SAE服务,即使没有丰富的云计算和IT经验,也能够让开发人员在实际业务场景中便捷的掌握如何构建和部署应用程序,快速拥抱Serverless架构,将精力聚焦在应用代码和业务逻辑的实现上。 学习完本课程后,您将能够: 掌握Serverless应用引擎(SAE)的基本概念与核心优势 了解Serverless应用引擎(SAE)的核心功能 掌握使用Serverless应用引擎(SAE)的开发和部署流程 了解Serverless应用引擎(SAE)的适用场景和最佳实践  
相关文章
|
2月前
|
Kubernetes 监控 开发者
探索容器化技术:现代应用开发的转变
【10月更文挑战第6天】探索容器化技术:现代应用开发的转变
|
Android开发 索引 容器
【Android 应用开发】Android 组件 位置坐标 属性 ( 组件位置属性 | 父容器坐标系坐标 | 窗口坐标系坐标 | 屏幕坐标系坐标 | 触摸坐标 )
【Android 应用开发】Android 组件 位置坐标 属性 ( 组件位置属性 | 父容器坐标系坐标 | 窗口坐标系坐标 | 屏幕坐标系坐标 | 触摸坐标 )
317 0
|
4月前
|
Kubernetes 持续交付 Docker
Python进行容器化应用开发
【8月更文挑战第13天】随着云计算和微服务架构的发展,容器化已成为现代应用开发的关键部分。Docker和Kubernetes是最流行的容器化工具。本文通过Python示例展示如何构建、运行容器化应用,并使用Kubernetes进行部署。首先介绍如何用Docker容器化一个简单的Flask应用,接着演示如何通过Kubernetes YAML文件定义和管理应用部署和服务。最后,探讨了使用Python与Docker及Kubernetes集成的最佳实践,包括自动化测试、持续集成、微服务架构和容器编排。
37 1
|
4月前
|
运维 Cloud Native Android开发
云原生之旅:容器化与微服务架构的融合之道安卓应用开发入门指南
本文将深入探讨云原生技术的核心要素——容器化和微服务架构,并揭示它们如何共同推动现代软件的开发与部署。通过实际案例分析,我们将看到这两种技术如何相辅相成,助力企业实现敏捷、可扩展的IT基础设施。文章旨在为读者提供一条清晰的道路,指引如何在云原生时代利用这些技术构建和优化应用。 本文将引导初学者了解安卓应用开发的基本概念和步骤,从安装开发环境到编写一个简单的“Hello World”程序。通过循序渐进的讲解,让读者快速掌握安卓开发的核心技能,为进一步深入学习打下坚实基础。
55 1
|
7月前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云函数计算中,容器运行过程中的最大内存使用量获取如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
7月前
|
监控 Java Serverless
Serverless 应用引擎操作报错问题之有个容器一直重启如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
7月前
|
运维 IDE Serverless
Serverless 应用引擎产品使用之阿里函数计算中,阿里云容器镜像服务(Container Registry)中创建自定义镜像,然后将其部署到FC上如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
7月前
|
运维 Serverless 应用服务中间件
Serverless 应用引擎产品使用之在Serverless应用引擎(SAE)中,在创建ALB时找不到对应的SAE容器如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
弹性计算 Kubernetes Serverless
SAE和容器服务 Serverless 版 如何选择
SAE和容器服务 Serverless 版 如何选择
373 0
|
Linux Docker Python
简单几招助您加速 ARM 容器应用开发和测试流程
阿里云容器服务推出了边缘容器,支持云-边-端应用一体协同。本文将介绍一些简单的技术在X86环境来构建和测试ARM 容器应用,无需交叉编译,无需修改镜像。
14449 0

热门文章

最新文章

相关产品

  • Serverless 应用引擎
  • 下一篇
    DataWorks