对于java应用性能跟踪其实有不少种手段,本文只是针对xrebel
的使用作一些简单讲解(单体应用
和微服务应用
)。分布式跟踪有不少,好比zipkin等,详见 分布式跟踪系统(一):Zipkin的背景和设计,可是过重了,不适合小规模团队,开发时期用。html
并且以zipkin为例,仅仅是A服务调用B服务耗时多少,并不会显示详细的线程,堆栈信息。须要搭配其余手段进行排查。java
示例:android
目前最新版本 xrebel-3.4.1.zipweb
xrebel支持eclipse和idea,同时有eclipse插件,建议使用独立方式安装。tomcat
D:\xrebel
-javaagent:[path/to/xrebel]/xrebel.jar
下面分别是idea,eclipserestful
默认是能够试用14天的,建议支持正版,毕竟你们都是吃这行饭的。并且 xrebel jrebel jrebel for android 给你省的时间,绝对值这个价。 jrebel有个免费的社区计划 my.jrebel.com/框架
打开 web 服务页面,xrebel会直接注入到你的页面中,左下角会出现 xrebel
的toolbar
,(e.g. http://localhost:8080)eclipse
或者经过 访问服务/xrebel
(e.g. http://localhost:8080/xrebel) 打开单独页面,适用于webservice,restful 等无页面场景分布式
若是不想注入到页面中,只想经过服务/xrebel
访问,则能够添加 -Dxrebel.injection=true|false
,默认为true
ide
其他开关参数 参见 XRebel launch parameters
参考 Using XRebel
参考 Microservices 和 XRebel 3.0: introducing microservices profiling
确保调用方,和被调用方,都开了xrebel,
效果以下
参考 Debugging with XRebel enabled
为嘛建议将静态文件分离?经过xrebel就能够清晰看出来