线上应用 10 秒启动、只占 20M 内存不再是想象~SOFAServerless 为你带来极致研发体验...

SOFAServerless 体系助力业务极速研发 SOFAServerelss 研发运维平台是蚂蚁集团随着业务发展、研发运维的复杂性和成本不断增加的情况下,为帮助应用又快又稳地迭代而研发。从细化研发运维粒度和屏蔽基础设施的角度出发,演进出的一套解决方案。 阅读详情

af89106587579463ce2deb2555b9e240.gif

你是否遭遇过大应用多人协作互相阻塞,发布效率太低?你是否苦于小应用太多,资源浪费严重?

想要让手上的工程仅需增加一个打包插件,即可变成 10 秒启动、只占 20M 内存的工程吗?

今天我们为大家介绍——基于模块化能力,从应用架构、研发框架和运维调度方面提供完整配套的 SOFAServerless 项目。助你解决上述问题,让存量应用一键接入,享受秒级启动、资源无感等收益,轻松跨入 Serverless 研发模式,帮助企业降本增效!

01

模块化应用架构

为了解决文章开头提到的这些问题,我们对应用同时做了横向和纵向的拆分。

第一步,纵向拆分:把应用拆分成基座和业务两层。这两层分别对应两层的组织分工。基座小组与传统应用一样,负责机器维护、通用逻辑沉淀、业务架构治理,并为业务提供运行资源和环境。通过关注点分离的方式,基座小组为业务屏蔽业务以下所有基础设施,使业务能够聚焦在业务自身上。

第二步,横向切分:我们将业务横向切分出多个模块,模块之间独立并行迭代、互不影响。同时模块由于不包含基座部分,构建产物非常轻量,启动逻辑也只包含业务本身,所以启动快,且具备秒级的验证能力,让模块开发得到极致的提效。

85023dd07a3f143fd63e877fa97233af.png

拆分前,每个开发者可能感知的部分包括框架、中间件、业务公共部分、业务自身所有代码和逻辑。

拆分后,团队的协作分工也发生改变,研发人员分工出两种角色:基座和模块开发者。模块开发者不用关心资源与容量,只需聚焦在业务逻辑自身,并且享受秒级部署验证能力。


a9b4a329d70f41e54c79f5f954152248.png

需要重点关注的是,我们是如何做这些纵向和横向切分的。切分是为了隔离,隔离是为了能够独立迭代、剥离不必要的依赖。然而如果只是隔离,没有共享,那就相当于只是改变部署的位置而已,很难达到好的效果。

所以想要理解模块化架构背后的原理,需要聚焦到隔离与共享上来。

架构的优势

我们根据模块化架构在蚂蚁内部实际落地的效果进行总结,其优势主要集中在这四点:快、省、灵活部署以及平滑演进。

e07db67a7792a850c248cd194aa9dedd.png

与传统应用对比,,数据如下,可以看到在研发阶段、部署阶段、运行阶段都得到了 10 倍以上的提升效果。

9ab21f867f0b0a0f406bfdcae729fb19.png

适用的场景

经过在蚂蚁集团内部四到五年的打磨,逐渐沉淀出的 6 大适用场景,看看是否有你需要的?

cec1fec7da6ff70c72f97d648eb14789.png

02

运维调度平台架构

光有应用架构还不够。只有在研发阶段、运维阶段、运行阶段都提供完整的配套能力,才能让模块化应用架构的优势真正触达到研发人员。

da569e15b12cfb4148e755e1215dae34.png


在研发阶段,需要提供基座接入能力、模块创建能力,更重要的是模块的本地快速构建与联调能力;在运维阶段,提供快速的模块发布能力,在模块发布基础上提供 A/B 测试和秒级扩缩容能力;在运行阶段,提供模块的可靠性能力,模块可观测、流量精细化控制、调度和伸缩能力。

afe19dab46edf0d540dbb2beea1a4ce0.png

在整个平台里,需要 4 个组件:

  • 研发工具 Arkctl,开发者使用 Arkctl 完成模块快速创建、快速联调测试等能力

  • 运行组件 SOFAArk,提供基于 ClassLoader 的多模块运行的环境

  • Arklet 和 Runtime 组件,提供模块运维、模块生命周期管理、多模块环境适配

  • 控制面组件 ModuleController

● ModuleDeployment,提供模块发布与运维能力

● ModuleScheduler,提供模块调度能力

● ModuleScaler,提供模块伸缩能力

在这些组件基础上,我们提供了从研发到运维再到运行时的完善配套能力。

多集群、弹性与调度

3f54135e9af6ed76f431c72ed33c1b9a.png

将线上应用根据场景隔离出不同机器组,不同机器组上可以安装不同模块,给不同业务提供不同的 QOS 保障。同时可以单独划分出 Buffer 机器组,当业务机器组机器不够时,可以快速从 Buffer 机器组里调度出机器,安装上相应的模块,完成 10 秒级的扩容。

14afa1f2fcd17944fec06003e1d2cfac.png

由于模块的启动速度在 10 秒级,所以在弹性上也能做到与服务更加同频、伸缩更加实时。从上图可以看到,应用实例数曲线与流量曲线基本处于一致的状态。

可观测、高可靠、排障等能力

模块化运维调度作为在 pod 上一层的模型,与现有配套设施会有所不同,所以需要针对配套设施完成可观测、监控排障等能力适配。

106f1adcd6357ecbbcfb56945911e02d.png

A/B 测试、灰度测试

一个模块更新时,可以同时存在多个版本。通过引流规则完成灰度测试,或者 A/B 测试。

aeddebc019305eef598cdc7088489a69.png

流量隔离与精细化路由

在上述内容中,已经将应用粒度从机器分组、代码分组(模块)上做了更细粒度的划分,这里我们将流量也进一步进行细粒度划分。

一组模块和对应所在的机器组可以分配不同的流量单元,再根据请求的不同参数,精细化路由到对应的流量分组中。

46bcf0304e880fd8d02340066f851348.png


当前完整能力已经开源:https://github.com/sofastack/sofa-serverless。非常期待与大家一起建设社区!

还有 2 分钟上手试用视频教程,欢迎在 https://sofaserverless.gitee.io/docs/video-training/ 进行查看&试用。

SOFAServerless 当前已接入 15+ 企业:

8b994707716d546801f09826c6a654df.png

如果你也想为企业实现降本增效,欢迎扫码咨询探讨~

376988898fdeebe6cbfb2ca07c4c86d1.png

1a7005c2a6776d3a11ada8b121c3e423.png

03

未来展望&议题分享

在未来,SOFAServerless 还将持续不断地探索。发现业务痛点,并为各行各业提出 Serverless 的解决方案。

以下,感谢各位开源共建开发者一直以来的支持与付出!(排名不分先后)

@QilingZhang @lvjing2 @glmapper @yuanyuancin @lylingzhen @yuanyuan2021 @straybirdzls @caojie09 @gaosaroma @khotyn @FlyAbner @zjulbj @hustchaya @sususama @alaneuler @compasty @wuqian0808 @nobodyiam @ujjboy @JoeKerouac @Duan-0916 @poocood @qixiaobo @lbj1104026847 @zhushikun @xingcici @Lunarscave @HzjNeverStop @AiWu4Damon @vchangpengfei @HuangDayu @shenchao45 @DalianRollingKing @lanicc @azhsmesos @KangZhiDong @suntao4019 @huangyunbin @jiangyunpeng @michalyao @rootsongjc @liu-657667 @CodeNoobKing @Charlie17Li @TomorJM @gongjiu @gold300jin @nmcmd

12 月 16 日 KCD 2023 深圳站(👈点击查看活动详情),期待和各位技术爱好者面对面交流探讨!

蚂蚁集团技术专家赵真灵将分享《云原生微服务的下一站,蚂蚁 SOFAServerless 新架构的探索与实践》。活动现场将设立展台进行 SOFAServerless 能力演示、操作流程互动展示。如果你对 SOFAServerless 感兴趣,欢迎前来参与体验~

扫描下方二维码或者点击「阅读原文」均可报名参与。

d9e09f9ac28e45dcd29c537f0c5cde03.png

进入 SOFAServerless 官网抢先体验:https://sofaserverless.gitee.io/docs/tutorials/trial_step_by_step/

如遇问题,可在 SOFAServerless GitHub 页面及时提交 issue 互动交流~

   推荐阅读  

d76149e9d1e47b43b1ba433910728fe8.png

蚂蚁 SOFAServerless 微服务新架构的探索与实践

71eda730e3bcfbdcf14a32440d03415f.jpeg

超越边界:FaaS 的应用实践和未来展望

b0a73250397dd9916222d357ff33fa77.jpeg

大象转身:支付宝资金技术 Serverless 提效总结

1d994a74c6eaea63ea1f549f003b2662.png

Lunettes - 让 Kubernetes 服务运营更简单

e0569ca49ed725b92f97f96273717f38.jpeg

手把手教你用Arduino IDE玩转ESP32-S3-wroom(附串口调试技巧) 本文详细介绍了如何在Arduino IDE环境下配置和使用ESP32-S3-WROOM模块,包括开发环境搭建、硬件连接、程序烧录及高级调试技巧。通过实战步骤和常见问题解决方案,帮助开发者快速上手这一高性能Wi-Fi/蓝牙双模模组,提升物联网开发效率。 阅读详情

相关推荐

手把手教你用支付宝密钥工具生成RSA2密钥对(含Windows/Mac操作截图)

本文详细介绍了如何使用支付宝密钥工具生成RSA2密钥对,包括Windows和Mac平台的操作步骤与截图。从工具下载、安装到密钥生成、配置支付宝平台,再到开发环境集成实战,手把手教你完成支付宝支付接口对接。特别强调密钥安全管理和最佳实践,帮助开发者避免常见安全隐患。

mongodb5scout的博客 257

SOFAServerless 第五次月度社区会议回顾

Serverless 开源计划SOFAServerless 是一种新的应用架构,将应用低成本地、同时进行纵向和横向拆分成基座和模块,让业务研发者享受到 Serverless 的秒级研发体验,也解决微服务领域里的这几个问题:1、横向拆分出基座屏蔽业务以下的基础设施、框架、中间件、业务通用逻辑等部分,降低业务开发者的认知负荷、提高开发效率。2、一个应用可以低成本改造或拆分出多个模块,模块间可以并行独立...

金融级分布式架构 432

从分立到集成:深入解析Buck电路的核心模块与设计权衡

本文深入解析Buck电路的核心模块与设计权衡,从分立到集成方案的优缺点对比。详细探讨Buck电路的高效能量转换、小型化设计及灵活电压调节能力,并结合实际案例分享分立方案中的PWM生成、反馈环路设计及保护电路优化经验,为工程师提供实用设计参考。

weixin_29306317的博客 223

蚂蚁 SOFAServerless 微服务新架构的探索与实践

赵真灵(有济)蚂蚁集团技术专家Serverless 和微服务领域专家曾负责基于 K8s Deployment 的应用发布运维平台建设、K8s 集群的 Node/pod 多级弹性伸缩与产品建设。当前主要负责应用架构演进和 Serverless 相关工作。同时也是 SOFAArk 社区的开发和维护者以及 KNative 社区的贡献者。本文3612 字,预计阅读12 分钟传统微服务架构面临的...

金融级分布式架构 1126

高效利用ChEMBL数据库:从靶点查询到活性数据处理的完整指南

本文提供了高效利用ChEMBL数据库的完整指南,从靶点查询到活性数据处理。详细介绍了靶点精准定位、高级过滤技巧、数据导出优化以及活性数据清洗、特征工程和可视化等实战技巧,帮助药物研发人员快速获取和处理生物活性数据,提升工作效率。

weixin_29278805的博客 792

手把手教你用Ubuntu Desktop搭建个人L2TP服务器,手机电脑都能连(Network Manager配置详解)

本文详细介绍了在Ubuntu Desktop上使用Network Manager图形化配置L2TP服务器的方法,实现手机、电脑等多设备安全连接。从环境准备、图形界面设置到各平台客户端配置,提供一站式解决方案,并包含常见问题排查与安全增强措施,帮助用户快速搭建个人远程访问网络。

weixin_30555125的博客 119

SOFA Weekly|SOFAServerless 新版本发布、Layotto 社区会议回顾&预告、社区本周贡献...

SOFA WEEKLY | 每周精选筛选每周精华问答,同步开源进展欢迎留言互动~SOFAStack(ScalableOpenFinancialArchitecture Stack)是蚂蚁集团自主研发的金融级云原生架构,包含了构建金融级云原生架构所需的各个组件,包括微服务研发框架,RPC 框架,服务注册中心,分布式定时任务,限流/熔断框架,动态配置推送,分布式链路追踪,Metrics 监控...

金融级分布式架构 308

【BIM入门实战】Revit创建地形的几种方法及优缺点

Revit在体量和场地选项卡的【地形表面】工具可以创建三维地形,有三种方法:放置点、指定点文件和导入实例文件、倾斜摄影点云技术和InfraWorks地形生成。 文章目录1. 放置点2. 指定点文件3. 导入实例文件4. 倾斜摄影点云技术5. InfraWorks地形生成 1. 放置点 放置点功能位于体量和场地选项卡下地形表面,点开找到放置点,并通过自定义设置点的高程值来创建地形的高程数据。 优点:通过用户自定义高程点来绘制模型,使地形更为精确。 缺点:只适用于面积小的项目,面积太大,人工效率低下。 .

智慧空间实验室 4759

高效降本|深度案例解读 Koupleless 在南京爱福路的落地实践

文|祁晓波南京爱福路汽车科技基础设施负责人主要研究微服务、可观测、稳定性、研发效能、Java 中间件等领域。本文4812字 阅读12分钟Koupleless(原 SOFAServerless)自 2023 年开源以来已经落地了若干企业,这些企业也见证了从 SOFAServerless 到 Koupleless 的品牌&技术能力迭代升级。随着 Koupleless 1.0 的重磅发布...

金融级分布式架构 1611

手把手教你ensp仿真搭建校园网(含防火墙及无线网络)系列(一)校园网核心交换机配置

本系列博客将带你从零开始,使用 华为 eNSP(Enterprise Network Simulation Platform) 仿真搭建一个完整的校园网络,涵盖 核心层、汇聚层、接入层、防火墙安全策略、无线AC+AP组网 等实战场景。无论你是网络初学者还是希望深化实战经验的工程师,都能通过本教程掌握企业级网络的规划、配置与排错技巧。

echo的博客 3797

Android系统开机时间分析与优化指南

本文系统阐述了Android开机时间优化的全流程技术方案。首先详细解析了从电源键按下到桌面显示的完整启动流程及关键事件序列,然后介绍了秒表计时、日志分析和自动化脚本三种测量方法。重点从底层和上层两个维度提出了具体优化措施:底层包括编译器优化、内核驱动裁剪和日志精简;上层涵盖系统服务参数调整、应用预优化和功能组件精简。最后提供了验证工具和方法,并强调优化需要在性能、功耗和功能间取得平衡。通过这套系统化方案,可有效提升Android设备的开机速度与用户体验。

学无止境 352

蚂蚁金服SOFA开源负责人鲁直:不只是中间件,未来会开源更多

为什么80%的码农都做不了架构师?>>> ...

weixin_34050519的博客 311

史上最全工商银行核心系统建设历程:从“数据集中”到“ECOS”2.0,见证银行业信息科技跨时代发展征程

ECOS工程的直接成果是建成了工商银行第五代信息系统,即从单一核心银行系统到去核心化开放生态系统,率先开启了以智能化、开放化为特征,数据驱动引领经营模式变革,创新提出了一整套国际领先的分布式开放生态银行系统建设方案,在大型银行全分布式系统架构、主机下移、银行系统生态化转型、大规模交易型分布式数据库等多个领域再次实现“0到1”的突破,建成了具备国际领先水平的全分布式开放生态银行系统,继续勇立数字化转型潮头,推动高质量发展再上新台阶。工商银行的业务连续性管理水平实现了跨越式发展,有力地保障了业务发展。

银行信息系统应用架构详解 824

Serverless 落地挑战与蚂蚁金服实践

目前 Serverless 已成为云原生社区关注的重点之一,有人说它是微服务的继承者,将会彻底改变软件研发的现状,那么真实情况如何呢?本文将介绍 Serverless 市场观察、落地挑战,以及蚂蚁金服对 Serverless 的实践。 Serverless 已成趋势 当我们回顾云计算的发展历程,会看到基础架构经历了从物理机到虚拟机,从虚拟机再到容器的演进过程。在这大势之下,应用架构也在同步演进...

阿里云云栖号 2092

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

SOFA Weekly|SOFAServerless 社区会议预告、Layotto 社区会议回顾与预告、C 位大咖说...

SOFA WEEKLY | 每周精选筛选每周精华问答,同步开源进展欢迎留言互动~SOFAStack(ScalableOpenFinancialArchitecture Stack)是蚂蚁集团自主研发的金融级云原生架构,包含了构建金融级云原生架构所需的各个组件,包括微服务研发框架,RPC 框架,服务注册中心,分布式定时任务,限流/熔断框架,动态配置推送,分布式链路追踪,Metrics 监控...

金融级分布式架构 205

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SOFA Weekly|SOFAServerless 社区会议回顾、社区本周贡献、SOFA 亚运特辑

SOFA WEEKLY | 每周精选筛选每周精华问答,同步开源进展欢迎留言互动~SOFAStack(ScalableOpenFinancialArchitecture Stack)是蚂蚁集团自主研发的金融级云原生架构,包含了构建金融级云原生架构所需的各个组件,包括微服务研发框架,RPC 框架,服务注册中心,分布式定时任务,限流/熔断框架,动态配置推送,分布式链路追踪,Metrics 监控...

金融级分布式架构 190

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

「KCD 深圳站」议题推荐|蚂蚁 SOFAServerless 新架构的探索与实践

为了更好地扩大和提升云原生技术的影响力,也让更多开发者有机会面对面吸收最新的技术动向和结识行业优秀从业者,2023 年 12 月 16 日,一场云原生盛会——Kubernetes Community Days(KCD)2023 将在深圳举办!本次大会中,蚂蚁集团技术专家赵真灵将做出分享《云原生微服务的下一站,蚂蚁 SOFAServerless 新架构的探索与实践》,为企业提出 Serverles...

金融级分布式架构 302

SOFAServerless架构的意义

摘要 SOFAServerless架构通过"基座+模块"的拆分方式解决传统微服务的痛点。纵向拆分为基座(基础设施)和模块(业务逻辑),横向拆分业务为独立模块,实现并行开发。核心技术包括:轻量模块构建(排除基座依赖)、类隔离机制(SOFAArk框架)、热部署技术(秒级更新)。该架构使发布效率提升10倍(30秒vs6分钟)、资源利用率提高10倍(多模块共享基座)、变更风险大幅降低。其核心价值在于让开发者专注业务,屏蔽基础设施复杂性,同时支持架构平滑演进。

LinJy 987

潜心打磨,主动求变——这群技术排头兵,如何做好底层开发这件事?

这是一支云原生基础设施的研发团队,他们想要研发出一整套云原生架构组件,让企业没有顾虑地专注在业务开发上,PaaS、Service Mesh、定制硬件等离业务较远的工作是他们的。这就是蚂蚁集团的可信原生团队。“我们工作做得越好,上层应用就可以拓展更多,非基础设施开发和基础设施开发人员的数量比例可能就越高。”蚂蚁资深技术专家、Kata Containers 共同发起人的王旭说...

金融级分布式架构 632

SOFA Weekly|SOFAServerless 社区会议回顾、Layotto 社区会议预告、SOFA 聊天室、社区本周贡献...

SOFA WEEKLY | 每周精选筛选每周精华问答,同步开源进展欢迎留言互动~SOFAStack(ScalableOpenFinancialArchitecture Stack)是蚂蚁集团自主研发的金融级云原生架构,包含了构建金融级云原生架构所需的各个组件,包括微服务研发框架,RPC 框架,服务注册中心,分布式定时任务,限流/熔断框架,动态配置推送,分布式链路追踪,Metrics 监控...

金融级分布式架构 217

SOFA 相关框架你有没有听过?

一、 前言 1、什么是 SOFA? SOFA 是 Simple Object-oriented and Flexible Architecture 的简称,是阿里巴巴国际技术事业部自研的专门针对复杂业务场景的应用架构 SOFA是蚂蚁自研的一套金融级分布式中间件,目前正在逐步向业界开源。SOFA的全称有两个,最早是Service Oriented Fabric Architecture,即面向服务的架构。随着2018年的开源,其全称改为Scalable Open Financial Architectur

欢迎来到 ABin-阿斌的博客:写一生代码,创一世佳话,筑一览芳华。 2797

Arkitect 项目使用教程

Arkitect 项目的目录结构如下: ``` arkitect/ ├── src/ │ ├── Console/ │ ├── Rules/ │ ├── Utils/ │ └── ... ├── tests/ │ ├── Console/ │ ├── Rules/ │ ├── Utils/ │ └── ... ├── .gitignore ├── composer

gitblog_00901的博客 571

SOFA 应用架构详解

本文来自作者 张建飞 在 GitChat 上的分享编辑 | 阿笠1. 前言从业这么多年,接触过银行的应用,Apple 的应用,eBay 的应用和现在阿里的应用,虽然分属于...

技术杂谈 4万+

Koupleless 助力蚂蚁搜推平台 Serverless 化演进

文|陈铿彬(花名:阿歹)蚂蚁搜推技术专家本文5211字 阅读10分钟背景介绍蚂蚁推荐平台 Arec(Ant Recommender Platform, 后续简称 Arec)是针对蚂蚁搜索、推荐、营销以及投放等业务特点建设的在线算法 FaaS 平台。它是由支付宝通用推荐平台 RecNeptune(中文称: 海王星)演进发展而来,目前在蚂蚁内部服务了支付宝、数金、网商、国际等多个部门的搜...

金融级分布式架构 1583
上一篇: 线上应用 10 秒启动、只占 20M 内存不再是想象~SOFAServerless 为你带来极致研发体验...
下一篇: SOFA Weekly|SOFAServerless & Layotto 社区会议预告、社区本周贡献
SOFAStack
博客等级 码龄7年 747粉丝 389原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值