V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
odirus

分享通过“Arthas + JRebel” 提升 Java 开发效率

  •  
  •   odirus · Aug 17, 2021 · 2483 views
    This topic created in 1720 days ago, the information mentioned may be changed or developed.

    我们在 Java 开发过程中下面的这些问题,也许你也会遇到,如果能够帮到你就太棒了,场景如下:

    1. 当写完一个 Dubbo Service 实现后,需要再写一些 Controller 代码(或者单元测试用例)才能够进行测试,比较浪费精力。

    2. 我们正在用 XXL-JOB 作为任务调度系统,开发时需要触发并测试某个任务,按理说可以在后台选择某台机器执行,但总会有一些原因触发不了本机的任务(例如我们遇到的网络问题、队列阻塞问题等),调试起来很累。

    3. 我们项目中有通过 RocketMQ 来作为消息队列系统,当需要测试某条消息时需要在 RocketMQ 后台 Push 一些测试消息才能够触发代码的执行,但订阅方可能多台机器在线,任务不一定会推送给我本机,测试起来就看运气。

    4. 修改一些超大型项目时,每次修改后都要重启几分钟,真的很浪费时间。

    针对上述问题,我们神奇地发现 Arhtas 与 JRebel 可以无缝地搭配起来,让 Java 开发也可以像写 JavaScript 一样流畅。Arhtas 可以让任何函数成为调试入口,不用再写一堆测试代码; JRebel 可以让开发变得更加流畅,两者配合使用的话效果最佳。

    整个方案中我们没有发明新东西,但通过这种组合关系,极大地提升了 Java 开发效率,希望可以帮助更多人。更多实践请参考 原文

    4 replies    2021-08-20 13:18:51 +08:00
    reliefe
        1
    reliefe  
       Aug 17, 2021
    有点意思。
    fmumu
        2
    fmumu  
       Aug 18, 2021
    jrebel 热加载,然后利用 arthas 的 ognl 来调用方法做测试,妙啊
    wolfie
        3
    wolfie  
       Aug 19, 2021
    这两个不是 Java 开发基本工具吗。
    reliefe
        4
    reliefe  
       Aug 20, 2021
    @fmumu 非常妙,用了就停不下来。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   849 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 22:39 · PVG 06:39 · LAX 15:39 · JFK 18:39
    ♥ Do have faith in what you're doing.