Troubleshooting Java Performance: Detecting Anti-Patterns with Open Source Tools