首页 > 其他分享 >Serverless

Serverless

时间:2024-05-16 14:10:00浏览次数:26  
标签:Serverless 架构 函数 处理 计算 应用

思考:Serverless架构如何落地实践?

小陈在收到业务部门的加急需求后,开始进行技术调研。他发现无论是将图片进行压缩或解压缩操作,都发生在相对较短的时间窗口内,对计算资源需求的弹性很大,存在着明显的高峰期和低谷期,且峰值的资源需求往往会比较高。如果要开发一个单独的应用功能来实现需求的话,需要考虑分布式架构、负载均衡、弹性伸缩等多方面的技术问题,对于开发资源的投入还是一个不小的挑战。小陈对需求实现的具体方式有些拿捏不准,准备找师傅大刘来探讨一番。

小陈:师傅,业务部门提的那个网站图片文件处理需求,如果要为此开发一个应用的话,我初步评估了下涉及到的技术栈还比较多,我担心自己不能完全胜任,咱们团队内部短时间内也很难协调开发资源。

大刘:运营部门对功能上线的时间催得很急,目前看起来确实是有这个风险。你觉得要实现需求,目前遇到的主要难点在哪?

小陈:图片压缩处理的功能本身实现起来其实并不复杂,但是为了实现这样的功能应用,光有应用代码还不够,需要选择合适的技术架构来承载,包括相关的容量规划、资源准备、应用配置等工作,同时还需要结合业务波峰波谷的变化考虑计算资源的弹性能力,以及合理的成本控制。需要考虑的问题还是挺多的,感觉有点亚历山大。

大刘:嗯,按你说的,如果按照传统应用的开发方式,对任何应用的开发,除了应用本身以外还需要关注资源层面的问题,确实不是一件简单的事儿。前一阵不是学习了Serverless么,不妨想想Serverless架构有助于解决我们面临的挑战吗?

小陈:师傅您这倒是提醒我了,Serverless倡导的就是屏蔽资源层面的复杂性,关注在应用功能逻辑本身,或许是适合解决我们当前的需求场景的一种方案。

大刘:当然,其实你前面所提到的难点,我认为Serverless架构都可以在一定程度上很好的解决。

小陈:Serverless架构的模式和理念我已经有所理解了,但如何才能利用它快速的落地我们的需求呢,有什么好的工具和产品吗?

大刘:建议你可以去了解一下函数计算这种服务,它可以算是Serverless的一种最佳实践了,各大云厂商基本都会提供这种形态的产品,比如阿里云函数计算服务,去研究研究,相信可以帮助到你。

小陈:好的师傅,我这就去学习。

 

函数计算诞生的需求背景

在之前的课程《Serverless技术和应用初体验》中我们学习过,Serverless通常被看作包含FaaS(Function as a Service,函数即服务)与BaaS(Backend as a Service,后端即服务)两部分。其中FaaS部分,通常负责业务逻辑的实现,其代表性产品就是函数计算,是Serverless中比较常见和通用的产品服务。通过函数计算服务,开发人员无需管理服务器等基础设施,只需编写代码并上传,函数计算会自动准备好计算资源,并以弹性、可靠的方式运行代码。

以上述提到的网站图片处理业务场景为例,我们在传统架构下,需要在云服务器或容器集群上部署应用来解析web图片和进行图片处理,用户通过手机端/网页端上传图片素材后,应用程序对素材进行定制处理,例如按用户属性分类、按区域分类,审核鉴定图片,压缩图片文件以及建立索引等,经过处理之后把素材存储到云存储中,用户通过最近节点的CDN可以轻松获取经过处理的图片素材。

注:CDN指Content Delivery Network 内容分发网络,是由不同区域的服务器组成的分布式网络,解决跨地域、跨运营商网络性能问题,提供稳定快速的加速服务,供用户就近获取内容,降低源站压力。

传统架构下的图片处理业务

在传统架构中,我们需要考虑的环节比较多,例如:

  • 需要采购多少台服务器?服务器采用什么规格?
  • 如何配置网络和操作系统?
  • 如何部署环境?
  • 如何负载均衡和分布式处理?
  • 如何动态伸缩?
  • 如何升级配置?
  • 如何应对服务器宕机和相关运维事件?
  • 如何应对用户请求峰值?
  • 如何应对系统监控报警?

 

 

为了帮助应用开发者摆脱服务器等底层基础设施管理的负担,专注于业务层的创新,而将底层服务器资源的管理和调度交给云厂商自动完成,Serverless计算模式就应运而生了。而函数计算服务,可以充分的发挥出Serverless架构的优势能力。通过使用函数计算,用户可以设置云存储的触发器,当用户的行为满足了触发器的条件时,会立即触发函数计算的执行,同样当业务访问量是峰值的时候,函数计算服务会自动扩容来支撑整个业务处理。处理后的数据回传到云存储OSS中,其他用户通过CDN可以访问被处理后的素材资源。

Serverless架构下的图片处理业务

在函数计算场景下,无论应用调用的频繁与否,开发者可以不需要关心业务波峰波谷对资源带来的影响,而是交给云平台来保障底层资源弹性扩容的有效性,甚至支持计算资源缩容到0,在没有业务处理请求时无需占用资源。这样即简化了运维管理的工作,又降低了成本开支,还通过云平台本身的安全能力增强了安全保障,同时还降低了整个业务开发、部署、迭代的技术门槛。在较为复杂的AI等高计算需求场景中,也可以支持按量付费的GPU计算资源,帮助企业更加高效率的实现业务的上线与迭代。

 

标签:Serverless,架构,函数,处理,计算,应用
From: https://www.cnblogs.com/flyingsir/p/18195855

相关文章

  • serverless基础应用
    架构的演进物理机时代:单机版的单体架构-数据库,应用代码,HTTP服务器等服务都在一台服务器上虚拟机时代:将一台物体机通过虚拟化技术分割为多台虚拟机,对于硬件设备的管理统一由云厂商负责,开发者不需买硬件,直接在云平台买虚拟机,例如阿里云的ECS为了降低服务器负载,数据库迁移到云厂商......
  • 国内独家|阿里云瑶池发布ClickHouse企业版:云原生Serverless新体验
    日前,阿里云联合ClickHouseInc.成功举办了「ClickHouse企业版商业化发布会」。阿里云ClickHouse企业版是阿里云和ClickHouse原厂独家合作的存算分离的云原生版本,支持资源按需弹性Serverless,在帮助企业降低成本的同时,为企业带来更多商业价值。 在发布会上,阿里云数据库产品事业部......
  • 云原生k8s史上最详细 云原生 serverless
    Serverless是云计算发展的产物,其实不管是云计算还是云原生,亦或者是Serverless架构,他具体是什么,都是很难说得清的,但是这并不影响我们对Serverless架构的理解。一、心智层面去服务器化:专业的事情交给更专业的人,开发者可以更关注于自身业务逻辑字面解释Server和less的:就是将更少的......
  • 30秒出服装设计稿,森马用Serverless+AIGC 整“新活”!
    “创新项目如何去赋能我们的业务,这件事情在森马很重要。阿里云函数计算帮我们屏蔽掉了想把AI落地到实际业务场景中 GPU 算力资源储备、采购成本、技术门槛等很多难题,从而迅速做出决策,快人一步站在正确的起点,体验新技术对整个服装爆款设计、营销链路带来的改变。”—— 林建霞......
  • 1 名工程师轻松管理 20 个工作流,创业企业用 Serverless 让数据处理流程提效
    作者:岳洋、陈德全、刘静娜北京语势科技有限公司成立于2023年6月,语势科技定位为“智能投资时代的主题入口”,在资管行业从以机构为核心转向以用户为核心的变革时代,通过打造主题投资引擎,赋能普惠投资一体化,打造以投资者和资管机构为主题和核心、自然语言交互形式为入口的“新桥......
  • 利用 Amazon EMR Serverless、Amazon Athena、Apache Dolphinscheduler 以及本地 TiDB
    引言在数据驱动的世界中,企业正在寻求可靠且高性能的解决方案来管理其不断增长的数据需求。本系列博客从一个重视数据安全和合规性的B2C金融科技客户的角度来讨论云上云下混合部署的情况下如何利用亚马逊云科技云原生服务、开源社区产品以及第三方工具构建无服务器数据仓库的解......
  • 1名工程师轻松管理20个工作流,创业企业用Serverless 让数据处理流程提效
    北京语势科技有限公司成立于2023年6月,语势科技定位为“智能投资时代的主题入口”,在资管行业从以机构为核心转向以用户为核心的变革时代,通过打造主题投资引擎,赋能普惠投资一体化,打造以投资者和资管机构为主题和核心、自然语言交互形式为入口的“新桥梁”。语势科技日均处理万条金......
  • Serverless 成本再优化:Knative 支持抢占式实例
    作者:元毅、向先Knative是一款云原生、跨平台的开源Serverless应用编排框架,而抢占式实例是公有云中性价比较高的资源。Knative与抢占式实例的结合可以进一步降低用户资源使用成本。本文介绍如何在Knative中使用抢占式实例。背景信息抢占式实例是一种低成本竞价型实例,您可......
  • [Microservices] Serverless Overview
    IntriductiontoSeverlessComputingDefineserverlesscomputinganddescribeitsconceptsServerlesscomputingistheconceptofbuildingandrunningapplicationsthatdonotrequireservermanagementItdescribesafiner-graineddeploymentmodelwherea......
  • 【SERVERLESS】搭建ServerLess服务
    目录一、前言二、什么是ServerLess?三、ServerLess技术选型四、ServerLess基础服务搭建Mac安装示例:Windows安装说明:五、生成ServerLess应用六、ServerLess部署验证并访问函数应用七、ServerLess进阶演示八、ServerLess最后总结一、前言​通常我们在做ServerL......