基于JRebel实现Idea热部署和XRebel的性能监控,听叔的,别再手动重启项目了

Posted 洛 神

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于JRebel实现Idea热部署和XRebel的性能监控,听叔的,别再手动重启项目了相关的知识,希望对你有一定的参考价值。

人世仙家本自殊,何须相见向中途。惊鸿瞥过游龙去,漫恼陈王一事无。
嗨,大家好,我是洛神,性别男。一个来自快乐星球的程序员
欢迎大家专注我的公众号【程序员洛神】,不仅分享技术,还会分享生活趣事、体育。

前言

今天在日常水群的时候,发现群里有位可爱的小基友问:gie gie们,我的项目重启为啥重启这么慢啊?
我一听,直接火冒三丈啊!我尼玛,搞开发你不热部署,你这不是在侮辱我迈?瞧不起我嘎某?我直接就怼他了:宝贝,晚上来我房间,我教你热部署啊~~~~

正文

随着现在企业的项目开发体量越来越大,每次在本地调试接口时,调整一丢丢的代码,就需要重新启动项目,有时候需要浪费好几分钟的时间,虽然方便我们摸鱼,但是!!!作为一名全心全意为公司的二十一世纪好员工,我怎会容忍这种损害公司利益的事情发生,于是乎,各式各样的热部署方案就诞生了。

热部署的思想就是在不重启项目(重启项目的目的就是为了重新编译class文件嘛)去更新class文件,这样就提升了开发效率,这样就可以在996的基础上进一步增加修福报的时间了!开心吧!!!

好了,不扯了,咱们进入今天的正题,我来带大家学习一个超级简单实用的热部署插件—JRebel。(本次演示基于IDEA编辑器)

安装插件

编辑器左上角的File->Settings 找到下图的介个位置

搜索到Jrebel后安装 安装完重启IDEA

激活JRebel

重启后,界面会弹出介个东西


按照这个格式依次填写:

第一个文本框的填写格式:https://jrebel.qekang.com/GUID JRebel4.2之前
http://idea.javatiku.cn/GUID JRebel4.2之后

邮箱:随便填一个有效邮箱即可。

勾选上最下面的那个单选框

GUID的生成步骤:

https://www.guidgen.com/

将这一串字符串复制粘贴进去就行
填好后保存即可。

如果不小心关闭了这个页面,可以在File->Setting中找到入口

设置成离线工作模式

然后点击图上的那个Work online(第一次进这个页面应该是work offline 意思是点击设置离线模式 我已经设置过了,所以显示的是这个)

设置自动编译

由于JRebel是实时监控class文件的变化来实现热部署的,所以在idea环境下需要打开自动编译功能才能实现随时修改,随时生效。
按照下图操作 勾选build project automatically选项 保存即可

打开运行时编译

快捷键 Ctrl+Shift+Alt+/ ,选择 Registry

找到compiler.automake.allow.when.app.running 这个单选框 勾选上 保存即可


好了 到这里就配置完了 你就会发现 你之前编辑器右上角项目启动的那个地方 多了两个奇怪的小按钮


分别对应的就是普通的run模式启动和debug模式启动了

然后每次改完代码之后,只需要CTRL+SHIFT+F9 就可以让代码生效了。

跟着洛神操作完以后,就可以快乐的修福报了,不需要再担心因为频繁重启项目而担心自己为公司创造利益的时间!冲吧!为了老板更好的生活!!!奥里给!

扩展:JRbel和XRebel

细心的同学可以发现,在启动按钮的旁边有个Jrebel的下拉框,打开之后是如下效果

有一个JRebel和Xrebel JRebel我们都已经知道是啥了,那这个XRebel又是个什么东东呢?

XRebel:请求中,各个部分代码性能监控。例如:方法执行时间,出现的异常,SQL执行时间,输出的Log,MQ执行时间等。

打开方式:
启动项目时选择 JRebel+XRebel的启动方式

然后访问地址:项目ip地址+端口号+项目名称+/xrebel
访问示例:
localhost:8080/luoshen/xrebel
访问成功后就会看到如下页面:

点一下I have a license 就会显示如下界面

选择Team URL

下面的信息就是你在激活Rebel的时候 填写的那个服务器地址(固定前缀+GUID的那个)
打开之前填写的那个信息(上面已经说过如果再次打开那个页面了)
复制粘贴进去 勾选下面那个单选框
点击 activate license按钮即可。


这四个菜单 分别对应的是 异常信息 响应时间 数据库耗时 日志
咱么来依次看一下

由于洛神的代码质量很高,所以一般这个Exception界面都是空白的(大家可以自己试试出异常长啥样,反正我没见过(不屑))

第二个 Application界面 代表的是整个接口的响应时间 以及每一步的执行时间 很详细有没有!!

下面这个是数据库SQL执行时间 并且展示了完整的SQL

下面这个是日志 有了它就再也不用去自己一点一点捞日志了

结尾

好了,以上就是这篇文章的干货部分了,其实关于idea的骚操作还是很多的,大家要学会主动学习,尽量想办法减少低效率的工作内容,努力吧!少年!

人世仙家本自殊,何须相见向中途。惊鸿瞥过游龙去,漫恼陈王一事无。我是洛神,我们下期见。

以上是关于基于JRebel实现Idea热部署和XRebel的性能监控,听叔的,别再手动重启项目了的主要内容,如果未能解决你的问题,请参考以下文章

基于JRebel实现Idea热部署和XRebel的性能监控,听叔的,别再手动重启项目了

基于JRebel实现Idea热部署和XRebel的性能监控,听叔的,别再手动重启项目了

IDEA 插件最佳组合:JRebel+XRebel 完成项目热部署和接口分析优化,太爽了!

idea 热部署插件 Jrebel+Xrebel 以及没有效果的原因

IDEA+JRebel实现全自动热部署

开发工具的那些故事IDEA安装Jrebel教程,并使用Xrebel进行接口分析优化