写点什么

助力业务极致研发:微服务的纵向与横向拆分,如何做好隔离与共享的平衡?|QCon

  • 2023-07-28
    北京
  • 本文字数:979 字

    阅读完需:约 3 分钟

助力业务极致研发:微服务的纵向与横向拆分,如何做好隔离与共享的平衡?|QCon

当前微服务发展至今,仍然存在几个问题:


  • 业务开发者需要感知复杂基础设施,启动慢(分钟级),研发效率低

  • 拆分微服务的成本高:拆分后每个子应用都包含公共部分(框架、中间件等),资源成本高,且需要长期维护

  • 拆分微服务的敏捷度与业务、组织发展的敏捷度不一致,如何合理的拆分微服务始终是个老大难的问题,拆得多造成资源和管理成本,拆的不够造成协作效率问题

  • ……


蚂蚁在研究了业务痛点后,采用分层思维模式,在传统微服务只是横向拆分基础上,改进成同时进行纵向和横向拆分,纵向拆分成基座和模块,使得模块不占用额外机器(节省容量),模块开发者只关注业务自身(认知负荷低);横向拆分成多个模块,让模块开发者可以独立迭代互不干扰(协作效率高)。


当前蚂蚁内已经全部 BG 共 40W Core 应用使用该新型应用架构模式,构建产物从原来的 GB 下降到 MB, 业务启动降到秒级,平均迭代效率提升 10 倍。


即将于 9 月 3-5 日举办的 QCon 全球软件开发大会·北京站,邀请到蚂蚁集团技术专家赵真灵前来分享以上经验。他于 2018 年加入蚂蚁集团, 曾负责基于 K8s Deployment 的应用发布运维平台建设、K8s 集群的 Node / pod 多级弹性伸缩与产品建设。当前主要负责应用架构演进和 Serverless 相关工作,完成蚂蚁新应用架构研发框架与平台的设计落地,全面应用于蚂蚁集团内部业务线,为线上 40W core 提供秒级验证发布能力,获得 2022 年信通院云原生技术创新奖。同时,也是 SOFAArk 社区的开发和维护者以及 KNative 社区的贡献者。



为什么我们推荐你来听这个分享,因为——


  • 现有应用可以平滑接入使用该方案,改造成本低

  • 提升效果明显,从原来分钟级启动降至秒级甚至毫秒级,且可以多个业务并行迭代

  • 支持业务按需进行微服务的拆分,支持平滑回退或演进成独立微服务


但赵老师坦言,在实践过程中,该方案也存在一些痛点——


  • 在 Java 技术栈里,现有技术体系大多都是基于单 ClassLoader 来实现的,而该模式是基于多 ClassLoader 的,存在一定的不一致情况

  • 多个模块合并部署在一个 JVM 内,有资源抢占


在本次分享中,他也会分享相关应对经验,欢迎各位前来交流。此外,据了解,该方案正在开源中,感兴趣的同学可以入群了解详情,钉钉群号:24970018417。


活动推荐


近 100 名讲师、近 30 个精彩专题、8 种交流活动,QCon 北京 2023,相约 9 月! 现在购票,享 9 折特惠,立省 ¥880!咨询购票请联系 18514549229(微信同手机号)。



2023-07-28 17:3047713
用户头像
QCon全球软件开发大会 升级你的软件开发思维

发布了 354 篇内容, 共 221.1 次阅读, 收获喜欢 256 次。

关注

评论

发布
暂无评论
发现更多内容

《我们脑中挥之不去的问题》 - 卓克科普(2)

石云升

读书笔记 科普 2月春节不断更

第十二周 数据应用一 作业 「架构师训练营 3 期」

胡云飞

聊聊大公司创新的机制:饱和攻击

boshi

创新 七日更

Scrum Patterns:梳理产品待办列表(译)

Bruce Talk

敏捷开发 译文 Agile Scrum Patterns

【LeetCode】情侣牵手Java题解

Albert

算法 LeetCode 2月春节不断更

SpringMVC专栏 第1篇 - 快速入门

小马哥

Java spring Spring MVC 七日更 二月春节不断更

工作学习累了?试试 GitHub 上的那些简单易学的游戏项目吧!

JackTian

GitHub 开源 游戏 2月春节不断更

JDBC速查手册

jiangling500

Java JDBC

日记 2021年2月14日(周日)

Changing Lin

2月春节不断更

第十二周学习总结

Binary

深入理解gradle中的task

程序那些事

Java maven Gradle 程序那些事 构建工具

【STM32】串口通信出现乱码(使用官方标准库)

AXYZdong

硬件 stm32 2月春节不断更

「架构师训练营 4 期」 第七周 - 001&2

凯迪

架构师训练营 4 期

ElasticSearch.01-简介

insight

elasticsearch 2月春节不断更

10. 比找女朋友还难的技术点,Python 面向对象

梦想橡皮擦

Python 2月春节不断更 python入门

深入浅出函数式编程:Stream流水线的实现原理

李尚智

Java 架构 微服务

杨明越:Kubernetes的下一仗可能是提升标准化程度

杨明越

熬夜7天,我总结了JavaScript与ES的25个重要知识点!

我是哪吒

学习 程序员 面试 大前端 2月春节不断更

Java SE最佳实践

jiangling500

Java 最佳实践 Java SE

Tomcat异常: Unable to process Jar entry [module-info.class] from Jar

小马哥

Java maven 七日更 二月春节不断更

9. Python 学习过程的第一个山坡,99%的人都倒在了山坡下

梦想橡皮擦

Python 2月春节不断更 python入门 python学习

Chrome浏览器多进程架构3个必会知识点

梁龙先森

面试 大前端 浏览器

还傻傻分不清楚equals和==的区别吗?看完就明白了

codevald

Java 源码分析 string Object

盘点关于程序员的那些经典案例

孙叫兽

程序员 程序人生 话题讨论 薪水 计算机原理

【STM32】串口通信---用代码与芯片对话

AXYZdong

硬件 stm32 2月春节不断更

第十二周课后作业

Binary

面试官系列:你对Spring事件发布和广播监听有了解吗?

后台技术汇

面试 2月春节不断更

Tomcat速查手册

jiangling500

Java tomcat

架构师训练营 4 期 第7周

引花眠

架构师训练营 4 期

Spring框架源码:BeanFactory与Bean的生命周期

程序员架构进阶

Java spring 源码阅读 七日更 2月春节不断更

Elasticsearch dynamic mapping

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

助力业务极致研发:微服务的纵向与横向拆分,如何做好隔离与共享的平衡?|QCon_微服务_QCon全球软件开发大会_InfoQ精选文章