前提
相信大部分小伙伴在编码完接口逻辑之后都会先在本地启动项目,然后postman
调用一下接口,看看response
是否符合预期,然后再部署到测试环境。
但是,如果接口场景是一些对耗时有严格要求的场景,例如: 商详、商列等
,那我们在postman
调用时如果发现耗时比较大,那么就需要进行一定程度的调优了,例如: 异步化
;但一个接口的堆栈可能很深
,那我们怎么知道到底是哪块的逻辑是耗时的罪魁祸首
呢?
当然啦,有个经典的蠢办法,对于我们怀疑的可能是罪魁祸首的逻辑,在调用前后打上耗时,如下例:
java
复制代码
long start = System.currentTimeMillis(); // ... 可能耗时的代码逻辑 log.info("接口耗时, {}", (System.currentTimeMillis() - start));
但是这种办法实在是效率太低了.... ,我们自然是要寻求高效率的方式,也就是本文会给大家推荐的IDEA插件 -> XRebel
下面先上效果图~
耗时百分比都给你展示出来,实在是yyds
!
安装教程
下载插件
在idea plugins
里面搜索JRebel
,JRebel
的作用是热部署的,本文重点还是XRebel
可以看到我目前安装的版本是2022.4.1
!为什么不是最新的?当然是因为我不知道最新的怎么破解的啦
下载之后,直接手动导入zip
,如下所示
激活插件
下载完毕之后,接着就是激活插件了
选择Team URL
进行激活
GUID
生成链接:www.guidgen.com/
第一行输入:jrebel.qekang.com/{GUID}
第二行输入:邮箱格式正确,邮箱地址随便填
然后就可以激活成功
啦~
配置插件
选择Work online
使用插件
可以-Dserver.port=8888
指定下启动端口~
选择XRebel or JRebel + XRebel
方式启动项目,记得选择火箭图标进行run
然后按照如下格式进行访问即可~
http://localhost:{项目的端口号}/xrebel
第一次访问也需要激活,按照上面跟大家说的激活方式填写即可激活~
一些坑
新UI IDEA没有可选择agent启动方式
如下可见,IDEA的旧UI
直接提供了如下三种选择方式
但在新UI
中就没有了直接可选择的方式
不过进过我一番寻找,还是能找到可选择的方式,路径如下
端口冲突,XRebel无法访问
这个说着就有点太倒霉了!
之前我项目的端口一直设置的是6000
,但是按照上面配置后,启动访问就会出现如下问题!
我一度怀疑是不是我电脑有问题,哈哈哈哈,但其实不是,根本上的问题是我是倒霉蛋!!!
经过我一顿搜索,发现了如下内容!
Chrome
默认部分非安全端口列表,虽然上面的方法可以解决问题,但建议尽量避免以下端口:
properties
复制代码
1, // tcpmux 7, // echo 9, // discard 11, // systat 13, // daytime 15, // netstat 17, // qotd 19, // chargen 20, // ftp data 21, // ftp access 22, // ssh 23, // telnet 25, // smtp 37, // time 42, // name 43, // nicname 53, // domain 77, // priv-rjs 79, // finger 87, // ttylink 95, // supdup 101, // hostriame 102, // iso-tsap 103, // gppitnp 104, // acr-nema 109, // pop2 110, // pop3 111, // sunrpc 113, // auth 115, // sftp 117, // uucp-path 119, // nntp 123, // NTP 135, // loc-srv /epmap 139, // netbios 143, // imap2 179, // BGP 389, // ldap 465, // smtp+ssl 512, // print / exec 513, // login 514, // shell 515, // printer 526, // tempo 530, // courier 531, // chat 532, // netnews 540, // uucp 556, // remotefs 563, // nntp+ssl 587, // stmp? 601, // ?? 636, // ldap+ssl 993, // ldap+ssl 995, // pop3+ssl 2049, // nfs 3659, // apple-sasl / PasswordServer 4045, // lockd 6000, // X11 6665, // Alternate IRC 6666, // Alternate IRC 6667, // Standard IRC 6668, // Alternate IRC 6669, // Alternate IRC
而我的项目端口6000
,正在其中
将项目端口换成别的,比如:8888
就好啦~
后话
我是 Code皮皮虾 ,会在以后的日子里跟大家一起学习,一起进步!
觉得文章不错的话,希望大家多多支持,一键三连~ 页可以在 掘金 关注我~