微服务和 Serverless 架构-Serverless 理念的出现

简介: 微服务和 Serverless 架构-Serverless 理念的出现

开发者学习笔记【阿里云云原生助理工程师认证(ACA)课程:微服务和 Serverless 架构-Serverless 理念的出现】

课程地址:https://edu.aliyun.com/course/3112075/lesson/19029


微服务和 Serverless 架构-Serverless 理念的出现

 

内容介绍:

一.云计算平台的优势和局限性1

二.云计算平台的优势和局限性2

三.需求催生新的架构升级

四.Serverless带来的产业模式升级

五.Serverless 的技术优势

六.Serverless 带来的技术升级

 

一.云计算平台的优势和局限性1

image.png

云原生中的另一个重要概念 Serverless 理念,2009年云计算方兴未艾之时,加州大学伯克利分校发布了一篇著名的论文:《在云之下,从伯克利的观点看云计算》,论文对云计算的发展方向和关键技术做了大量的预测和论证。
在论文中,伯克利大学对云计算的业态总结了六点优势,其中前四点优势包括:无限可用的计算资源、用户不需要承担服务器运维工作和责任、服务按需付费,超大型数据中心降低使用成本,这四点经过云计算厂商多年努力,结合新商业模式,已经从预测变为了现实,但第五点和第六点问题,即可视化资源管理运维操作难度大大降低,和分时复用硬件的利用率大大提高,虽在云计算环境下有所改善,但问题并没有得到完全解决。

 

二、云计算平台的优势和局限性2

image.png
与传统自建 IPC 模式相比,云计算着重解决数据中心商业模式变化和服务器虚拟化与上云。

在云计算模式下,用户不再需要自建 IPC 和购买实体服务器,而是转向云计算厂商租用虚拟服务器,但开发人员使用服务器的方式并没有太多改变。
具体来讲,都是通过远程连接登录服务器,然后在服务器上进行操作系统升级维护和应用运行环境配置,以及应用的部署、运行、调试,唯一的区别只是远程登录地址由自家IPC转到云服务厂商。

这样可以降低用户上云的迁移成本,并不需要对原有的服务器使用流程做过多修改,但这样做的缺点首先是无法完全消除不必要的运维经济消耗,虚拟机的操作系统和应用运行环境仍然需要开发者定期升级和检查安全漏洞,这些操作无形中增加了企业运维人员的精力消耗,而且一旦升级更新部署环境出现问题,潜在的安全风险也大大上升。

虚拟服务器一般使用按时长付费的方式租用,但在实际使用过程中,应用的消耗有着时间周期的变化,虚拟服务器往往为了应付短时间的大流量而在其他时间计算需求不足,导致资源的浪费,即物理计算资源利用率并没有得到更加深入的挖掘和提升。

 

三、需求催生新的架构升级

在这种情况下,2015年推出了一款名为 AWS Lambda的产品,在这款产品中亚马逊提出了 Cloud 和 Serverless理念。其中 Serverless 并不是指不再需要服务器,而是开发人员不再关注服务器,转而使用运营商提供的应用运行环境直接运行应用。
亚马逊的这一理念一经提出,就引起了业内的广泛关注,虽然 AWS Lambda 这款产品,在设计上仍显得有些粗糙,以致其并没有迅速成为主流,但是Serverless 的概念为业界提供了新的云资源管理思路。

image.png


Serverless的概念,如上图,在云计算模式下,要运行由代码编写的一个简单网络应用,需要做的最小操作是:首先编写简单代码,然后租用 ECS 服务器,并在服务器中配置代码运行环境,接下来为 ECS服务器配置 VPC ,配置公网弹性 IP。
当启动多实例时,开发者还需要配备SLB 作为负载均衡,如果再考虑到应用流量变化,还需配备弹性伸缩组件,相比较下,业务代码的编写在整体流程中的占比反而相对较低,而在 Serverless 中用户只需开发服务代码,然后将服务代码传入与运行环境相关的Serverless 平台上即可运行。
运行环境的准备、公网 IP的配置以及多实例的负载均衡和弹性伸缩都由 Serverless平台进行提供,这就大大降低了应用开发者的运维成本。

 

四.Serverless 带来的产业模式升级

image.png

Serverless 平台包含云计算平台下应用所需的全部资源,开发者不再需要关注 ECS 网络资源,应用平台等多种顶层资源,同时,Serverless 模式并不像传统的 ECS 服务器,采用按时长方式进行收费,而是提出新的商业模式,即按计算量进行收费,云服务厂商会提供一个容量庞大的集团资源池,当 Serverless 应用需要使用计算资源时,则动态的从资源池中请求资源。
而当资源使用结束后,则迅速将资源归还给公共资源池。Serverless 的资源使用时间可以精确到秒甚至毫秒,这种设计相较于 ECS 的租用模式,资源的使用效率又得到了明显的提升,同时,对企业资产管理来讲,这种完全按照计算量收费的模式,简化了计算方法,做到了费用和业务部门的计算量完全挂钩,计算即付费,不计算不付费,使得资产管理更加便利。

 

五.Serverless 的技术优势

 image.png经过四五年的发展,Serverless 理念逐渐在云原生中得到了广泛实践,2019年伯克利分校再次发表的论文对 Serverless 做出了三点总结:

1. 存储与计算分离:按需使用计算资源就意味着当计算停止时,对应的应用资源将得到释放,在这种情况下,如果存储和计算绑定,势必在计算释放计算资源时也会导致存储数据丢失。因此 Serverless的设计思路即是将数据存储和数据计算分开,存储放在可持久服务中,计算放在可释放服务中。

2. 代码的执行,即数据的计算不再需要手动分配和维护资源,只需要准备好应用程序,直接通过 Serverless平台向公共资源池申请资源即可。

3. 云服务厂商按照代码计算量精确付费,一旦计算资源结束,会在秒到毫秒间释放计算资源,保证计算资源的最大效率运用。

 

六.Serverless 带来的技术升级

 image.png 

Serverless 理念不仅带来了运维效率的提升和商业模式的变化,也为云计算的底层技术实现带来了变革的契机。
传统的云计算方式下,应用的部署环境一般为右图,底层是物理服务器,物理服务器之上是云计算操作系统,而云计算操作系统之上安装一层虚拟机,通过虚拟机将物理服务器虚拟成多台ECS 云服务器,在 ECS 云服务器之上会再安装ECS 操作系统, ECS操作系统之上才是云计算应用平台和云计算应用实例。这种在底层安装了两套工作系统和一套虚拟机的架构,虽然有助于实现 ECS的按需租用。但是虚拟底层造成的性能损失平均估计在10%-20%左右,而在Serverless 基础下,开发者不再关注操作系统和运行环境。应用也不再需要直接部署在操作系统上,云服务厂商可以完全抛弃虚拟机层,在服务器操作操作系统上直接安装应用平台层,通过应用平台层实现计算资源分配和应用之间的隔离。
这样的服务架构我们称为 ESB 弹性裸金属服务器,裸金属服务器的含义就是底层的物理服务器直接暴露给应用平台层,不再存在中间的虚拟层,一台底层物理服务器可以支撑大约几十个虚拟机,而弹性裸金属服务器架构下, Serverless 应用平台可以支持几百甚至数千个应用同时部署,操作系统和底层护理服务器的硬件架构都可以为 Serverless 平台做制定化的修改和设计。
因此,如果说容器技术是云原生的基础技术,微服务架构是云原生下的推荐架构,那么 Serverless 理念则深刻的改变了用户的上云方式和云服务厂商的底层技术实现。

相关实践学习
函数计算部署PuLID for FLUX人像写真实现智能换颜效果
只需一张图片,生成程序员专属写真!本次实验在函数计算中内置PuLID for FLUX,您可以通过函数计算+Serverless应用中心一键部署Flux模型,快速体验超写实图像生成的魅力。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
6月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
12月前
|
数据采集 运维 Serverless
云函数采集架构:Serverless模式下的动态IP与冷启动优化
本文探讨了在Serverless架构中使用云函数进行网页数据采集的挑战与解决方案。针对动态IP、冷启动及目标网站反爬策略等问题,提出了动态代理IP、请求头优化、云函数预热及容错设计等方法。通过网易云音乐歌曲信息采集案例,展示了如何结合Python代码实现高效的数据抓取,包括搜索、歌词与评论的获取。此方案不仅解决了传统采集方式在Serverless环境下的局限,还提升了系统的稳定性和性能。
346 0
|
12月前
|
存储 运维 Serverless
千万级数据秒级响应!碧桂园基于 EMR Serverless StarRocks 升级存算分离架构实践
碧桂园服务通过引入 EMR Serverless StarRocks 存算分离架构,解决了海量数据处理中的资源利用率低、并发能力不足等问题,显著降低了硬件和运维成本。实时查询性能提升8倍,查询出错率减少30倍,集群数据 SLA 达99.99%。此次技术升级不仅优化了用户体验,还结合AI打造了“一看”和“—问”智能场景助力精准决策与风险预测。
1081 69
|
9月前
|
缓存 Cloud Native Java
Java 面试微服务架构与云原生技术实操内容及核心考点梳理 Java 面试
本内容涵盖Java面试核心技术实操,包括微服务架构(Spring Cloud Alibaba)、响应式编程(WebFlux)、容器化(Docker+K8s)、函数式编程、多级缓存、分库分表、链路追踪(Skywalking)等大厂高频考点,助你系统提升面试能力。
947 0
|
11月前
|
数据采集 运维 监控
Serverless爬虫架构揭秘:动态IP、冷启动与成本优化
随着互联网数据采集需求的增长,传统爬虫架构因固定IP易封禁、资源浪费及扩展性差等问题逐渐显现。本文提出基于Serverless与代理IP技术的新一代爬虫方案,通过动态轮换IP、弹性调度任务等特性,显著提升启动效率、降低成本并增强并发能力。架构图与代码示例详细展示了其工作原理,性能对比数据显示采集成功率从71%提升至92%。行业案例表明,该方案在电商情报与价格对比平台中效果显著,未来有望成为主流趋势。
448 0
Serverless爬虫架构揭秘:动态IP、冷启动与成本优化
|
12月前
|
Cloud Native Serverless 流计算
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
611 12
|
Kubernetes 监控 Serverless
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
|
传感器 监控 安全
智慧工地云平台的技术架构解析:微服务+Spring Cloud如何支撑海量数据?
慧工地解决方案依托AI、物联网和BIM技术,实现对施工现场的全方位、立体化管理。通过规范施工、减少安全隐患、节省人力、降低运营成本,提升工地管理的安全性、效率和精益度。该方案适用于大型建筑、基础设施、房地产开发等场景,具备微服务架构、大数据与AI分析、物联网设备联网、多端协同等创新点,推动建筑行业向数字化、智能化转型。未来将融合5G、区块链等技术,助力智慧城市建设。
706 1
|
存储 消息中间件 人工智能
基于 Apache RocketMQ 的 ApsaraMQ Serverless 架构升级
基于 Apache RocketMQ 的 ApsaraMQ Serverless 架构升级
332 0

相关产品

  • 函数计算