Performance bottleneck location tool jprofiler study notes [original]

1. Background
    With the rapid development of domestic cross-border e-commerce, the company's customs clearance service platform is facing increasing pressure. In the past Double Eleven period, the number of orders declared by Tmall alone exceeded 1 million per day. In addition to the number of logistics, payment, declaration forms and related receipts, the exchange volume per day exceeded 10 million. Faced with such great pressure, we made a lot of optimization in the early stage, and finally supported the customs clearance declaration of major e-commerce companies smoothly. Here is an introduction to our performance optimization analysis tool jprofiler.

Second, the role of
   jprofiler jprofiler has many functions, such as analyzing the execution of memory, database, and cpu. I mainly use it to locate performance bottlenecks.     3. The software version used for this optimization in the

construction of jprofiler environment :     Linux version: jprofiler_linux_8_0_4.tar.gz     Windows version: jprofiler_windows-x64_8_0_1.zip    can be downloaded from http://ej-technologies.com/download/jprofiler/files.    Unzip the server to a directory on the server, such as /opt/jprofiler.    The client is installed to any location on the client.    Copy a startup script from the server, take weblogic as an example, copy start_weblogic.sh to a directory on the client, and then start the jprofiler client for configuration.







   1) On the toolbar of the main interface, select start center->new server integration->weblogic 9.2->on a remote computer (Linux x86/AMD64)->(oracle 1.5.0 hotspot 64-bit jvm->startup immediately , connect later with the jprofiler GUI-> enter the server IP-> enter the server jprofiler installation directory {/opt/jprofiler}-> enter the placement directory of config.xml (what the hell, tell you below), select manual synchroniztion- >Select the startup script copied to the client in the preparation work->port default 8849->next->No, I will start the session later.
   2) Put the config.xml mentioned in 1 (located in the windows user directory {C :\Users\zhenggm\.jprofiler8\config.xml}) to the server installation directory (/opt/jprofiler), switch to the copy directory of the client preparation directory (start_weblogic.sh), there should be an additional start_welbogic_jprofiler .sh, copy this to the directory where the server start_weblogic.sh is located.
    3) Change the permissions of config.xml and start_weblogic_jprofiler.sh to 777.
   4) Start with start_weblogic_jprofiler.sh.
   5) Find the new configuration in the start Center of the client (weblogic server 9.2 on xxx.xxx.xxx.xxx),

Fourth, jprofiler use
    1) After connecting to the monitor, click on the CPU views on the left to view the performance bottleneck. As can be seen from the figure below, the serialization and deserialization of packets takes a long time.
   
   2) The corresponding method can be optimized according to the positioning.

5. Problems encountered
  1) When using the new startup script to start weblogic, the error that /opt/jprofiler/bin/linux-x64/libjprofilerti.so cannot be found may occur.
    Solution: Change the libjprofilerti.so file path in the start_weblogic_jprofiler.sh script to /opt/jprofiler/bin/linux-x86/libjprofilerti.so

Sixth, eclipse JVM parameters
-agentpath:C:\tools\jprofiler_windows-x64_8_0_1\jprofiler8\ bin\windows\jprofilerti.dll=port=8849

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326725193&siteId=291194637