Wednesday, November 16, 2005

As I grow to become a Performance Engineer ....Essential points to remember

1. Always instrument whats happening.
2. Make a baseline. For eg: if a process is failing at 100 users, start from 10, and create a baseline. See where the user load and memory load change dramatically. That will give you an idea of where to start looking.
3. Know the code. The code is your friend. Logging helps.
4. Don't assume that what the developers think is the probelm is the real cause of the problem. Make your own tests and verifications. More often that not, big words like "Memory Leak" etc may be used, but that may not be the real cause of the problem.

Here are some useful steps
1. Recreate the problem.
2. Create your baseline.
3. Create logging information.
4. Try to find the "breaking point" for the code.
5. Make sure you're looking at the real problem and not a referred problem. Drill down the code. Understand it well. It will help!
6. Memory problems can well be traced using Jprobe or Xloggc in java.

Saturday, September 10, 2005

Connection Pooling with Java....

Remember to close the Statement, PrepareStatement & ResultSet before returning the connection back to the connection pool.

Otherwise, you'll more than likely get "Open cursors exceeded" and that connection will be useless. Even if you return it to the pool, more than likely those will not be closed.