NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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

发布了 120 篇内容, 共 32.3 次阅读, 收获喜欢 107 次。

关注

评论

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

Java高并发编程课后总结

Java 程序员 后端

JDK8-Object源码

Java 程序员 后端

JVM之调优及常见场景分析

Java 程序员 后端

Java编程配置思路详解(1)

Java 程序员 后端

Java面试中最常问的JVM问题大全,附答案

Java 程序员 后端

Java经典算法题(二)

Java 程序员 后端

Java黄金五年——1~5年一个Java程序员从入行到大牛的晋升之路

Java 程序员 后端

Java进阶:什么是TCP-IP?如何运用!(1)

Java 程序员 后端

Java面试之EJB & Spring

Java 程序员 后端

Java程序员:面试字节跳动被问算法 多亏我扛下来了

Java 程序员 后端

Java编程配置思路详解

Java 程序员 后端

Java集合容器面试题(2020最新版)

Java 程序员 后端

Java面试题大全(持续更新中)

Java 程序员 后端

Java面试题超详细整理《JVM篇》(1)

Java 程序员 后端

Java高级特性之多线程

Java 程序员 后端

Java线程状态以及 sheep()、wait()、yield() 的区别

Java 程序员 后端

Java进阶:什么是TCP-IP?如何运用!

Java 程序员 后端

Java面试题超详细整理《JVM篇》

Java 程序员 后端

Jenkins部署springboot项目

Java 程序员 后端

JSP“三大请求传参方式”及“中文乱码问题解决方案”详解

Java 程序员 后端

JVM及GC机制

Java 程序员 后端

k8s常见问题大收集

Java 程序员 后端

Java程序设计(基础)- 数据类型

Java 程序员 后端

Java面试通关要点汇总集

Java 程序员 后端

Jsoup解析html

Java 程序员 后端

Java详解:如何实现一个-redis-缓存服务

Java 程序员 后端

Java面试宝典(2020版)

Java 程序员 后端

JAVA面试核心教程|Java面试基础知识点总结

Java 程序员 后端

JetBrains 又出了一款新神器,一套代码适应多端!

Java 程序员 后端

Java笔记 —— Set集合的排序原理(源码分析)

Java 程序员 后端

Java虚拟机内存结构及编码实战

Java 程序员 后端

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