【直播回顾】阿里高级开发工程师紫思:闲鱼多业务隔离框架SWAK

简介: SWAK框架是闲鱼开发的一套主要用于解决平台型应用中的多业务耦合问题的技术框架。大多应用的代码都是增量式开发,然而随着业务数量的增加,不同类型的业务代码逐渐交织耦合、难以拆解,严重降低开发效率和团队协作效率。

主讲人:紫思(阿里集团-新零售技术事业群-高级开发工程师)
本名:刘孝圣

阿里巴巴闲鱼技术部服务端开发工程师,目前在闲鱼主要负责商品域的功能开发和SWAK框架的开发迭代。所负责的SWAK框架已稳定支持了闲鱼的商品发布功能和详情功能。个人对技术框架、业务框架、领域驱动设计等方面有浓厚兴趣。

___


点击关注紫思的云栖社区个人主页

内容概要:
闲鱼SWAK框架主要用于解决平台型应用中的多业务耦合问题。大多应用代码都是增量式开发,然而随着业务数量的增加,不同类型的业务代码逐渐交织耦合、难以拆解。这将会给代码维护、新增需求带来极大的困扰,严重影响开发效率和团队协作效率。闲鱼在发展的过程中也遇到了类似的问题。为此,闲鱼创建了SWAK框架并已在线上环境真实使用,大幅提升了代码质量和团队协作效率。

本次直播将从具体的例子入手,一步一步带领大家探索SWAK框架的核心设计原理,并将实例介绍SWAK框架在闲鱼的应用。相关介绍可以参考https://yq.aliyun.com/articles/645779https://yq.aliyun.com/articles/687947

以下为紫思专家此次所讲的PPT截图:

1


2


3


4


5


6


7


8


9


10


11


12


13


14


15


16


17


18


19


20


21


22


23


24


25


26


27


28


本PPT下载地址:点击下载
视频直播回顾:点击观看

本直播回顾视频也可选择扫下方二维码入群观看~

云栖社区的官方Java钉钉群:
【阿里Java技术进阶2群】
Java_2_
点击link入群方式: http://byan.top/VjOiEk

以下为云栖社区的官方Java云栖号:
Java技术进阶(点击关注)

相关文章:
业务代码解构利器--SWAK

老代码多=过度耦合=if else?阿里巴巴工程师这样捋直老代码

【阿里Java技术进阶】官方钉群直播大全(持续更新)

阿里开发者技术社群键盘图【全网首发,10万开发者的大社群】

相关文章
|
Java Nacos Spring
spring boot 2.6.x接入spring cloud alibaba 2021.x版本nacos
spring cloud alibaba 2021.x版本nacos配置中心对接spring boot 2.6版本。
spring boot 2.6.x接入spring cloud alibaba 2021.x版本nacos
|
测试技术 数据安全/隐私保护
深入理解与应用软件测试中的边界值分析法
【4月更文挑战第23天】在软件测试的诸多技术中,边界值分析法因其简洁性和高效性而备受青睐。本文旨在探讨边界值分析法的核心原理及其在实际测试场景中的应用。通过对边界条件进行系统的识别、分类和测试,该方法能够有效地发现软件缺陷。我们将详细讨论如何确定边界值,设计测试用例,以及如何处理复杂数据类型的边界情况。此外,文章还将展示通过案例研究来验证边界值分析法在提升测试覆盖率和发现潜在错误方面的实际效益。
|
测试技术 领域建模 定位技术
基于事件风暴的需求分析 | 方法案例一
事件风暴(Event Storming)源自领域驱动设计社区,由 Alberto Brandolini 在2012 年发明[1]。 事件风暴最早的名字是基于事件的建模(Event-Based Modeling),正如这个名字所暗示的,事件风暴在发明之初的核心目的是领域建模,在今天的大多数文献和实践中,事件风暴的核心关注点都是领域模型和软件架构。
4701 2
基于事件风暴的需求分析 | 方法案例一
|
5月前
|
机器学习/深度学习 人工智能 数据可视化
鱼类AI数量检测代码分享
本代码基于深度学习实现鱼类数量检测,使用预训练的 Faster R-CNN 模型识别图像中的鱼类,并用边界框标注位置。支持单张图片检测、文件夹批量检测、结果可视化及统计分析。需安装 PyTorch、OpenCV 等依赖库。可微调模型提升鱼类检测精度。
|
测试技术
领域驱动设计问题之什么是领域服务(Domain Service),它与应用层服务有何区别
领域驱动设计问题之什么是领域服务(Domain Service),它与应用层服务有何区别
8540 0
|
设计模式 移动开发 Java
浅谈交易链路中的一些设计原则&模式
作者对设计原则、模式等学习后,通过本文谈谈自己的感受。
160408 28
|
存储 关系型数据库 MySQL
Mysql的LSN是什么?
LSN(Log Sequence Number,日志序列号)是一种用于标识事务日志中每个操作的递增数字。它有助于记录日志位置、支持崩溃恢复及检查点机制。通过 `SHOW ENGINE INNODB STATUS;` 可查看LSN,其作用包括记录日志位置、支持崩溃恢复、更新检查点以及追踪数据文件状态。
704 1
Mysql的LSN是什么?
|
存储 NoSQL 算法
全链路营销|基于事件驱动的流程编排系统
本文主要介绍了 AE 策略中心的技术方案选型与落地实战。
|
存储 SQL 搜索推荐
业务系统架构实践总结
作者从2015年起至2022年,在业务平台(结算、订购、资金)、集团财务平台(应收应付、账务核算、财资、财务分析、预算)、本地生活财务平台(发票、结算、预算、核算、稽核)所经历的业务系统研发实践的一个总结。
|
存储 NoSQL 数据库
为什么要用 Tair 来服务低延时场景 - 从购物车升级说起
“购物车升级”是今年双十一期间提升用户体验的关键项目,展示了大淘宝技术团队致力于通过技术突破消费者和商家体验的天花板。低延迟是这些挑战中的核心,内存数据库Tair因其高吞吐、大连接数、热点请求处理、异常流量管理和复杂计算逻辑优化等特点,在低延迟场景下表现出色。Tair使用内存/SCM混合存储和各种索引来提供低延迟服务,并通过无锁并发、水平扩展分区等技术应对高并发。此外,Tair还通过热点策略、流控和执行流程优化等手段确保在大促时的稳定性和性能。Tair在双十一期间支持了购物车、销量统计、卖家优惠券召回和互动场景等多种业务,展现其低延迟和高并发的能力。
77406 11