服务代码瘦身

1. 背景

我司是做全球业务的,在全球分别部署了 5 个大集群(资源独立)。
随着业务的发展,业务下线,业务负责人变更是很常见的事情。
业务下线,但是代码却未下线,服务代码量越来越大。
那么有什么方式能够快速把不用的代码找出来呢?

2. 怎么产生这个想法的?

在 Idea 中,可以通过以下方式找出未被使用的方法
Code -> Analyze Code -> Run Inspection by Name -> unused declaration

但是呢,这种方式无法知道哪些 「资源」 未被使用。
资源的定义:接口、Dubbo Provider、Job、MQ 等。

如果使用人工的方式拿到服务的资源使用情况,再和代码做对比。不仅费时,费力,还容易错。
那么如何让机器帮我们处理呢?

如果我们能拿到服务「资源」的使用情况,再可以通过 Idea Plugin 把声明在代码中未被使用的资源找出来,并显示出来,这样就可以节省非常多的人力成本。

OK,让我们顺着这个思路实践。

3. 实践

3.1 如何拿到服务资源使用情况
3.1.1 简单但清洁力度有限

一般会有监控平台,只需要把对应资源的使用情况打点上报。我们就可以通过监控平台拿到对应资源的使用情况。
这种方式最简单,投入产出比高,但是清洁力度有限。

如果使用该方式实现,一般还需要再借助 Idea 找出未被使用的方法

笔者实际开发中,使用的就是该方案。

3.1.2 高效但实现难度高

可以参考 去哪儿网系统瘦身技术揭秘

实现难度高、投入高。中小公司不推荐使用该方式!!!

3.2 实现流程

image.png

3.3 遇到的困难

最难的可能是 Idea Plugin API 使用了吧。因为网上相关资源并不多。

这里提供几个方法快速熟悉 Idea Plugin API

  1. Github 上找相关度最高的插件代码
  2. Idea 官方文档 时,先看目录,了解 Idea Plugin 的整体设计,从整体在到细节
  3. IDEA 交流论坛 如果不清楚怎么使用 API,可以到这个论坛上找找代码

4. 总结

整体实现难度不高,主要是 Idea Plugin API 相关资料太少,导致开发难度上升。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值