This is the 8th day of my participation in Gwen Challenge

instructions

JRebel is quick to implement hot deployment, saves a lot of restart time and improves personal development efficiency. Hot deployment is a familiar thing, and many hot deployment plug-ins have been seen, but JRebel is the best. XRebel is an interactive analyzer that runs continuously on web applications and displays a warning message in the browser when problems are found. XRebel monitors application code in real time for performance metrics and problems that may occur.

JRebel

Both JRebel and XRebel plug-ins are available on Intellij Idea and require legal purchase. JRebel can be set up for automatic hot deployment, and in the IDEA environment you need to enable automatic compilation to make changes at any time.

Open Registry Settings

Then the ICONS are run and Debug mode under JRebel, but I personally don’t like automatic hot deployment, usually we change the code and hit build, it’s not a time-consuming operation, it’s much faster than restarting.

XRebel

When we call the interface, we get the following prompt

2021-04- 0911:06:23.152 XRebel: Started XRebel for application: http://localhost:8080/ipweb
2021-04- 0911:06:23.152 XRebel: XRebel UI is available at http://localhost:8080/ipweb/xrebel
Copy the code

You can click in and you can see it

(NacOS keeps sending heartbeats.)

abnormal

The first menu is show exceptions, where all exception information is displayed.

We can see the exception log and locate the problem (this MQ timeout I ignored).

application

The second menu is the details of our in-app active call interface.

We can see the interface path, IP address and call duration 600ms. And you can see how much time is spent in each link. Here you can see that the most time is spent in the call of CompletableFuture (here is the optimized place, the original interface is called 500ms, the synchronous call time of business processing is increased to 3s, and the asynchronous optimization is up to 600ms), which saves the troublesome work of printing time! Seeing in detail what the most time-consuming parts are can help us optimize interface response times. Look carefully, it even SQL information is also displayed, our query statement is what, what method of SQL execution, how much time is clear at a glance!