100 likes | 386 Views
Performance, Profiling, & Optimization Strategies for Enterprise Java Applications. Presented By: S. Ray Holder Advisor: Dr. Jeff Donahoo. Project Focus. Enhance performance Identify problems Load and stress test Implement/evaluate solutions Improve maintainability
E N D
Performance, Profiling, & Optimization Strategies for Enterprise Java Applications Presented By: S. Ray Holder Advisor: Dr. Jeff Donahoo
Project Focus • Enhance performance • Identify problems • Load and stress test • Implement/evaluate solutions • Improve maintainability • Replace custom solutions • Eliminate boilerplate code • Investigate new frameworks
Contest Management System 2.0 • ICPC • Generalized contest management • Production system • Modular design • Open source technologies Spring (Middleware), Acegi (Security), Hibernate (ORM), JSF (View) Tomcat (Web), MySQL (DB)
Tools of the Trade • CPU profiler: JIP • Memory profiler: JMX managed bean • SQL profiler: Elvyx • Custom load/stress testing Framework • MySQL/Hibernate
Object Relational Mapping How do we get our object in to and out of a relational database?
ORM Optimizations • Lazy fetch • Object graph • Objects • Collections • Database optimizations • Indexing • Data placement • Schema • Custom queries • Caching hints
Future Directions • Security model • Maintenance • Performance • Next generation frameworks • JBoss Seam 2.0 • Struts 2