System Statistics and Diagnostics
The platform provides three dedicated statistics pages for monitoring system performance and diagnosing processing, CPU, and memory issues:
- Worker Pool Stats — monitors task processing and worker queues.
- Threads Stats — monitors thread activity and CPU usage.
- Virtual Machine Stats — provides information about the Java Virtual Machine (JVM) and memory usage.
Together, these pages help identify performance issues and trace them from a general symptom to a specific system resource.
Worker Pool Stats
A worker pool is a group of internal workers that process messages and requests in parallel. Using multiple workers allows the platform to process tasks concurrently and prevents requests from accumulating in a single queue.
The Worker Pool Stats page provides an overview of the current processing workload. Use it to:
- check whether unprocessed tasks are accumulating;
- view the total number of processed tasks and timers;
- identify uneven workload distribution between workers.
This page helps detect processing delays before they become visible to end users.
Settings
The following settings and controls are available:
- Worker Pool — selects the worker pool to monitor. The list contains only pools running on the currently connected server. To monitor another server, open its Worker Pool Stats page.
- Refresh Period(s) — sets the automatic refresh interval. Available values are 2, 5, 15, and 30 seconds.
- Refresh — updates the statistics manually.
- Stop Refresh — stops automatic updates.
Worker Pool Queue
The Worker Pool Queue section provides aggregated queue statistics:
- Pending Tasks — number of tasks currently waiting for processing.
- Pending Timers — number of scheduled events currently waiting for processing.
- Total Tasks — cumulative number of tasks processed since the system started.
- Total Timers — cumulative number of timers processed since the system started.
A continuously increasing number of pending tasks may indicate that the system is not keeping up with the current workload.
Worker Queues
The Worker Queues table shows the workload for each individual worker.
- Worker Number — identifies the worker.
- Pending Tasks — number of tasks currently waiting for that worker.
Use this table to determine whether the workload is distributed evenly or concentrated on a specific worker.
Threads Stats
Threads are the execution units used by the platform to perform operations. They directly contribute to CPU usage.
The Threads Stats page provides information about thread activity and processor load. Use it to:
- monitor overall CPU load;
- view the current number of active threads;
- identify the peak number of active threads;
- determine which thread consumes the most CPU resources.
Settings
The following settings and controls are available:
- Refresh Period(s) — sets the automatic refresh interval. Available values are 2, 5, 15, and 30 seconds.
- Refresh — updates the statistics manually.
- Stop Refresh — stops automatic updates.
Thread Statistics
The summary row provides the following information:
- Total Threads — total number of threads.
- CPU Load (%) — overall processor load.
- Active Threads — number of currently active threads.
- Peak Threads — highest number of simultaneously active threads recorded.
Threads
The Threads table lists individual threads and their CPU usage.
- ID — unique thread identifier.
- Name — thread name, which may indicate the operation or task being processed.
- Status — current thread state, such as waiting or running.
- Core CPU Load (%) — CPU usage relative to a single processor core.
- Total CPU Load (%) — CPU usage relative to the entire system.
Use the CPU load values to identify threads that may be contributing to high processor usage.
Virtual Machine Stats
The platform runs on the Java Virtual Machine (JVM). The JVM provides the runtime environment for the Java application and manages resources such as memory allocation and cleanup.
The Virtual Machine Stats page provides:
- technical information about the JVM environment;
- information about memory usage by object types.
This information can be useful when diagnosing system issues or providing environment details to technical support.
Settings
The following settings and controls are available:
- Refresh Period(s) — sets the automatic refresh interval. Available values are 5, 15, and 30 seconds.
- Refresh — updates the statistics manually.
- Stop Refresh — stops automatic updates.
Virtual Machine Information
The first table provides information about the runtime environment:
- Machine Name — Java Virtual Machine implementation, such as OpenJDK 64-Bit Server VM.
- Operating System — operating system running on the server.
- Architecture — server processor architecture.
- Java Version — Java version used by the platform.
This information is useful when diagnosing technical issues and identifying the environment in which they occur.
Allocated Classes
The Allocated Classes table shows how memory is distributed between object types.
- Class Name — type of object stored in memory.
- Instances — number of instances currently allocated.
- Total Bytes — total memory occupied by the instances.
Monitoring these values over time can help identify abnormal memory growth. A class that continuously increases in size without being released may indicate a memory leak.
Performance Diagnostics
The three statistics pages provide different levels of system diagnostics:
- Worker Pool Stats shows whether the system is keeping up with the current workload.
- Threads Stats helps identify CPU-intensive threads and processor load.
- Virtual Machine Stats provides information about JVM memory usage and allocated objects.
Use these pages together to trace performance issues from task processing to CPU and memory resources.
Start innovating with Mobius
What's next? Let's talk!
