写点什么

助力业务极致研发:微服务的纵向与横向拆分,如何做好隔离与共享的平衡?|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:3047476
用户头像
QCon全球软件开发大会 升级你的软件开发思维

发布了 287 篇内容, 共 170.8 次阅读, 收获喜欢 228 次。

关注

评论

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

Spring经典面试题,帮你整理好了!(1),一个星期4轮面试终拿下offer

Java 程序员 后端

Spring经典面试题,帮你整理好了!,阿里P8大牛亲自教你

Java 程序员 后端

SpringCloudRPC调用核心原理:RxJava响应式编程框架,其他操作符

Java 程序员 后端

Spring中注解,java电话面试技巧

Java 程序员 后端

Spring入门后半部分----JDBCTemplate和事务控制

Java 程序员 后端

SpringBoot基于微服务架构的前后端分离博客系统源码免费赠送

Java 程序员 后端

SpringMVC--请求参数绑定,spring菜鸟教程

Java 程序员 后端

VIVO一面竟然翻车,含泪整理了这些Java面经,看完我悟了

Java 程序员 后端

Vue 脚手架结合 SpringBoot 构建前后端分离入门项目(实现增删改查)

Java 程序员 后端

YYDS,瞬间秒杀全网,这套Java面试笔记可以解决90

Java 程序员 后端

Threadtear:一款多功能Java代码反混淆工具套件

Java 程序员 后端

Tomcat是如何运行的?整体架构又是怎样的?,java面试经验技巧

Java 程序员 后端

Web开发基础:HTML,java面试没问技术问题

Java 程序员 后端

windows下快速安装nginx 并配置 开机自启动,基础+底层+算法+数据库

Java 程序员 后端

SpringCloud Alibaba 入坑(六),java开发程序员面试题

Java 程序员 后端

zookeeper之java API使用,zookeeper学习

Java 程序员 后端

“三次握手,四次挥手,java程序设计教程第三版雍俊海pdf

Java 程序员 后端

[译] 微服务的设计模式,java后端面经

Java 程序员 后端

Spring中的循环依赖及解决,springboot入门与实践PDF

Java 程序员 后端

Spring动态代理时是如何解决循环依赖的?为啥用三级缓存?

Java 程序员 后端

T-SQL——数据透视和逆透视,java架构师面试答案

Java 程序员 后端

Tomcat服务器搭建及测试教程,java技术路线规划

Java 程序员 后端

SpringBoot整合SpringSecurity超详细入门教程

Java 程序员 后端

Spring源码学习~循环依赖(面试必问系列,学java基础的心得体会

Java 程序员 后端

Spring源码解析(一)IOC,终于找到一个看得懂的JVM内存模型了

Java 程序员 后端

VirtualBox虚拟机网络设置(四种方式),java高级程序员简历

Java 程序员 后端

super与this在成员变量,成员方法,构造方法方面的作用

Java 程序员 后端

SpringBoot源码学习系列之嵌入式Servlet容器

Java 程序员 后端

Springboot过滤器和拦截器详解及使用场景,nginx原理和架构

Java 程序员 后端

SpringBoot配置文件,springboot项目案例百度云

Java 程序员 后端

Spring总结以及在面试中的一些问题,java面试笔试题代码

Java 程序员 后端

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