Disk Usage - how much disk space is free/being used by the systemĪs well as providing tick rate averages, spark can also monitor individual ticks - sending a report whenever a single tick's duration exceeds a certain threshold.Memory Usage - how much memory is being used by the process.CPU Usage - how much of the CPU is being used by the server process, and by the overall system.Tick Durations - how long each tick is taking (min, max and average).TPS - ticks per second, to a more accurate degree indicated by the /tps command.Spark can report a number of metrics summarising the servers overall health. Observe frequency/duration of young/old generation garbage collections to inform which GC tuning flags to use.Allows the user to relate GC activity to game server hangs, and easily see how long they are taking & how much memory is being free'd.GC Monitoring - monitor garbage collection activity on the server.This snapshot can then be inspected using conventional analysis tools.Dumps (& optionally compresses) a full snapshot of JVM's heap.Heap Dump - take a full (HPROF) snapshot of the servers memory.Not intended to be a full replacement of proper memory analysis tools.A simple view of the JVM's heap, see memory usage and instance counts for each class.Heap Summary - take & analyse a basic snapshot of the servers memory.Spark includes a number of tools which are useful for diagnosing memory issues with a server. Built-in Java ThreadMXBean - an improved version of the popular WarmRoast profiler by sk89q.Native AsyncGetCallTrace + perf_events - uses async-profiler ( only available on Linux x86_64 systems).There are two different profiler engines: The call graph is then displayed in an online viewer for further analysis by the user. It works by sampling statistical data about the systems activity, and constructing a call graph based on this data. The viewer can also apply deobfuscation mappings. Highly readable - simple tree structure lends itself to easy analysis and interpretation. Customisable - can be tuned to target specific threads, sample at a specific interval, record only "laggy" periods, etc.Quick to produce results - running for just ~30 seconds is enough to produce useful insights into problematic areas for performance.
0 Comments
Leave a Reply. |