System Performance Issue Analysis and Optimization Process for Business Applications
The article outlines a comprehensive process for diagnosing and optimizing performance problems in production business systems, covering causes such as high concurrency, data growth, hardware constraints, and detailing analysis of hardware, OS, database, middleware, JVM settings, code inefficiencies, and the role of monitoring and APM tools.
This article presents a step‑by‑step methodology for analyzing and diagnosing performance issues that arise after a business system goes live, emphasizing the need to distinguish between single‑user bottlenecks and concurrency‑induced problems.
It identifies three typical root causes: sudden high concurrent access, accumulated data volume in the database, and changes in critical environment factors such as network bandwidth.
The discussion then expands to the three major influence dimensions—hardware environment, software runtime environment, and application code—detailing how CPU, memory, disk I/O, and network resources can become bottlenecks and how Linux tools (iostat, ps, sar, top, vmstat) help surface these issues.
Database and middleware performance tuning are covered next. For Oracle databases, the article lists optimization areas (disk I/O, rollback segments, redo logs, SGA, objects) and shows how to enable STATISTICS collection via init.ora and session settings. Middleware tuning focuses on containers such as WebLogic or Tomcat, highlighting JVM parameter adjustments (‑Xmx, ‑Xms, ‑XX:MaxNewSize, etc.) and cluster configuration.
JVM memory sizing guidelines are provided, recommending Xmx/Xms values 3‑4 × the old‑generation usage, PermSize/MaxPermSize 1.2‑1.5 ×, and Young Generation (Xmn) 1‑1.5 × the old‑generation size, while noting the shift to Metaspace in newer JVMs.
The article stresses that most performance problems stem from software code defects—inefficient loops, unreleased resources, lack of caching, long‑running transactions, or sub‑optimal algorithms—and advocates static code analysis and peer code reviews to catch them early.
Finally, it describes how IT resource monitoring and Application Performance Management (APM) tools provide proactive detection of performance degradation, linking resource‑level metrics to specific services, SQL statements, and business functions, thereby enabling faster root‑cause identification and resolution.
IT Architects Alliance
Discussion and exchange on system, internet, large‑scale distributed, high‑availability, and high‑performance architectures, as well as big data, machine learning, AI, and architecture adjustments with internet technologies. Includes real‑world large‑scale architecture case studies. Open to architects who have ideas and enjoy sharing.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.