Saturday, November 21, 2015

Tools to Identified performance bottlenecks.

In my recent project we did performance tuning of a java application. I used below tools to identify the performance bottlenecks. The application was a distributed web application, developed using IceFaces , EJB 3, JPA 2. I found the tools very effective in identifying root cause of the problem , specially AppDynamics was very useful.

ü  AppDynamics –  Application Performance Monitoring tool(APM ).
ü  Jconsole  - Monitoring tool to monitor JVM
ü  Eclipse Memory Analyzer – Tool for Java Heap Analyzer
ü  Oracle Enterprise Manager – for database tuning. 


*       AppDynamics is the next-generation application performance  management solution. AppDynamics is available as AppDynamics Lite (Free) or AppDynamics Pro (Commercial).  
*       AppDynamics Lite has 2 Components
*       AppDynamics Lite Application Server Agent
*       AppDynamics Lite Viewer
AppDynamics Lite Application Server Agent
The AppDynamics Application Server Agent collects performance data overall and diagnostic data and sends it to the AppDynamics Lite Viewer where you can monitor the health of each Business Transaction from a single easy-to-use dashboard. You can drill down into all Business Transactions to troubleshoot code hot spots, exception stack traces, and SQL queries.
AppDynamics Lite Viewers
The Viewer stores and analyzes application performance data about a single JVM or CLR, using data collected by the Agent. You install the Viewer on the same machine as the application server or Java process that you want to monitor. The Viewer requires very little disk space and memory, and you can open multiple Viewers on multiple application servers running on the same machine. The Viewer is a browser-based Flash application that runs on commonly-used computer systems.
AppDynamics Lite download comes as zip named AppDynamicsLite.zip. After extracting the zip you get two zip files, LiteViewer.zip for the Viewer and AppServerAgentLite.zip for the Agent.
*       Install the Viewer
      Extract the LiteViewer.zip file.
      From the viewer directory run the below command
      java –jar adlite-viewer.jar
      By default it will run on port 8990. If you do not want the Viewer to be installed at the default port, you can change the port number using the -Dadlite.port command option.
     java -Dadlite.port= -jar adlite-viewer.jar
      Open a Web browser and enter the Viewer URL     http://localhost:8990
      Install the Application Server Agent
      Extract the AppServerAgentLite.zip on the same file system as the app server.
      Open the startWebLogic.cmd file or startWebLogic.sh in case of Linux environment
      Add below javaagent argument to the beginning of your application server start script.
     For Windows
     Set JAVA_OPTIONS=% JAVA_OPTIONS% -javaagent:"Drive:\agent_install_dir\javaagent.jar"
     For Linux
     Set JAVA_OPTIONS=% JAVA_OPTIONS% -javaagent:"Drive:\agent_install_dir\javaagent.jar"
      Restart the application server. The application server must be restarted for the changes to take effect.


No comments: