发布日期:2026-03-17 13:03 点击次数:79

1.配景Lalamove 国外化业务经过了多年的迭代和演进,代码日渐肥美,毋庸的业务逻辑、铲除的 DB 字段等充斥在代码每个边缘,交往团队在项当今期死板统计,至少存在30%以上代码属于铲除的无效逻辑,订单畛域的铲除 DB 字段也在100+以上,对代码质地和研发遵循皆形成了较大影响。
在2025岁首,lalamove 交往团队启动了代号为"大扫除"的代码瘦身诡计,旨在通过排除无效代码和 DB 铲除字段的阵势,进步代码可读性、可人慕性,裁汰疏通本钱,最终进步研发遵循。并最终取得了可以的效率:
2.瘦身范围毋庸代码波及的范围超越大,咱们需要从中识别出 #后端 #架构 #代码整洁之说念 ROI(参加产出比)最大的部分。最终详情的代码瘦身范围包括如下几类:
无援用的代码(包括类、递次、字段)有援用无流量的递次毋庸的DB属性无效的Apollo建设对于重构:尽管在代码瘦身中,业务重构也有所波及,但重构条目对业务畛域较为闇练,米兰app且重构阵势因业务畛域而有所不同,非通用搞定决策可以作念到。故本文不伸开先容。
3.若何高效计帐毋庸代码?3.1 代码瘦身器具简要在对毋庸代码和铲除 DB 字段的计帐过程中,CI 团队和交往研发团队合作,建造了3种器具。这些器具可以协助咱们精确识别毋庸代码,最终进步计帐效率。而况充分商量到易用性,作念到低本钱可复用。
3.2 SA插件的旨趣和使用3.2.1 SA插件旨趣先容SA 插件 使用了 Spoon器具 的代码表露智力 、Hotspot VM SA(Service Ability) 的递次践诺次数统计智力 。 在处事启动一段本事后,运用 Spoon 赢得[ 递次全集 ], 运用 Hotspot VM SA(Service Ability) 赢得[ 有流量递次集 ], 对两者取差集得到[ 无流量递次集] 。
3.2.2 Hotspot VM SA(Service Ability)Hotspot VM SA(Service Ability) 是 HotSpot VM 提供的一套调试器具集,它可以通过 attach 到主义进度的阵势,赢得主义进度在 OS 层面的内存数据,其中就包含 JAVA 的” 递次践诺次数 ”. JVM 记载递次践诺次数的主义是为了将高频讲授践诺的代码,通过 JIT(just in time)机制编译为土产货机器码, 进步践诺效率。 The Serviceability Agent(SA) . The Serviceability Agent is a Sun private component in the HotSpot repository that was developed by HotSpot engineers to assist in debugging HotSpot. They then realized that SA could be used to craft serviceability tools for end users since it can expose Java objects as well as HotSpot data structures both in running processes and in core files.
参考: openjdk.org/groups/hots…
3.2.3 网罗过程这里咱们将 jdk 提供的 sa-jdi.jar, 包装为一个 java 进度外的 SA Agent, 在 k8s 容器断送时触发主义 JVM 的 attach 作为,且只会对处事的 k8s 集群中" 最早启动的 pod "进行网罗。
最终将网罗到的" 递次践诺次数 "数据上报到" 代码精简平台 ".
天博体育(TBSports)官方网站3.2.4 凝视事项Hotspot VM SA(Service Ability) 的attach作为会触发JVM暂停(STW, stop the world),因此需要接受顺应的attach时机,比如东说念主工离线处事pod或发布时的pod断送等。Hotspot VM SA(Service Ability) 网罗JVM数据需要鼓胀内存(如剩余内存至少在500M~1G)。被Hotspot VM SA(Service Ability) 网罗的处事必须具有多个pod实例(2个以上最好),谨防办作事务被中断 或 极点情况下单点问题。3.2.5 代码已毕被编译践诺的递次网罗:public class CompiledMethodVisitor implements CodeCacheVisitor{
//......
public void visit(CodeBlob codeBlob) {
if (codeBlob == null 米兰app官网
上一篇:米兰app官网 LinkedIn首创东谈主: 不想被淘汰, 必须养成“AI优先”的念念维习尚
下一篇:米兰app官网版 A股午后跳水, 超4500股下落! 尾盘主力超大资金大幅买入这些个股

备案号: