Memcached Statistics Test
Memcached caching system is distributed in memory caching solution, and is used primarily to provide high speed data retrieval for web applications. Availability of data requested from web application and the speed at which data is retrieved are key indicators of effectiveness of the cache. To understand the performance of the cache it is important to understand the statistics around these two key indicators. At any given point it is important that most of the data requests are served from Memcached caching system, and with the expected speed. In case Memcached caching system is not working as expected, the requests will have to be served from database which is not only inefficient but also spoils users experience. That is the reason it is important to monitor Memcached caching system statistics, so that administrators get valuable insights into its performance and take corrective actions proactively.
This test monitors the Memcached caching system and collects key indicators around Memcached caching system statistics like number of connections used, commands, hits and deletes etc. These statistics help administrators get valuable insights into Memcached caching system performance.
Target of the test : Memcached caching system
Agent deploying the test : An internal/remote agent
Outputs of the test : One set of results for Memcached caching system
Parameter | Description |
---|---|
Test period |
How often should the test be executed. |
Host |
The IP address of the target server that is being monitored. |
Port |
The port number through which the Memcached caching system communicates. |
Measurement | Description | Measurement Unit | Interpretation |
---|---|---|---|
Connections rate |
Indicates the number of connections used in a second. |
Connections/Sec |
The high number of connections should be avoided as it can cause too much load on the cache. |
Command set |
Indicates the average number of set commands issued to write data to cache. |
Sets/sec |
Initially the high number of set commands will be good as the cache prepares the data but later on the number should come down. |
Command flush |
Indicates the number of flush commands issued to flush certain entries from the cache. |
Flushes/sec |
A high number of cache flushes can precede a number of cache misses, but given flushes are intentional, the number of misses should come down. |
Get misses |
Indicates the number of times in a second, the data read from the cache failed. |
Misses/sec |
If there are too many get misses, it is a cause of concern and should be investigated. |
Get hits |
Indicates the number of times in a second the data reads were successful. |
Hits/sec |
A high number of get hits is a good sign of high performance of the cache. |
Delete misses |
Indicates the number of times in a second the delete operation failed. |
Misses/sec |
|
Delete hits |
Indicates the number of times in a second the delete operation succeeded. |
Hits/sec |
|
Compare and Swap misses |
Indicates the number of times in a second the compare and swap operations failed. |
Misses/sec |
It should be investigates why the operations has failed, it is because of cache miss or is it because of limited memory availability. |
Compare and Swap hits |
Indicates the number of times in a second the compare and swap operations were successful. |
Hits/Sec |
High number of successful operations ensure that cache remains fresh. |
Data reads |
Indicates the size of data read from the cache in a second. |
MB/Sec |
Amount of data reads should be optimal. |
Data written |
Indicates the size of data written to the cache in a second. |
MB/Sec |
The rate at which data is written should be monitored against the cache flushes and evictions to ensure that cache doesn't run out of memory. |
Number of items added |
Indicates the number of items added to the cache in a second. |
Number/sec |
The rate at which items are added should be monitored against the cache flushes and evictions to ensure that cache doesn't run out of memory. |
Evictions |
Indicates the average number of evictions from the cache in one second. |
Evictions/sec |
If there are too many evictions, then administrators need to look if the data in cache is not suitable for purpose. |
Command get |
Indicates the average number of get commands issued to read data from the cache. |
Gets/sec |
A healthy number of get commands is good if the number of misses is in control. |
Pointer size |
Indicates the size of cache pointer. |
MB |
|
Current connections |
Indicates the total number of connections currently existing in cache. |
Connections |
A high number of connections hitting cache might end up putting too much pressure on cache slowing doen the cache operations. |
Data used for caching items |
Indicates the data used for caching items currently. |
MB |
The data used should be proportionate to memory available inthe cache. |
Current items |
Indicates the total number of items currently in Memcached caching system. |
Number |
Number of items available in the cache currently should be optimal leaving memory available for new items |
Maximum size limits |
Indicates the maximum number of items allowed in the current Memcached caching system. |
MB |
If the number of items is reaching towards the limit, administrators may have to forcibly evict items from the cache. |
Listen disabled number count |
Indicates the maximum number of connections that Memcached can handle. If this is set to a low number or disabled, it might prevent new clients from connecting, leading to issues with caching. |
Number |
If the connection limit is too low or if listening is disabled, you'll need to adjust these settings to ensure optimal performance. |
Threads |
Indicates the total number of threads handling the connections in current Memcached caching system instance. |
Number |
A high number of threads may offer advantage to the client but can cause read issues at cache side. |
Get misses percentage |
Indicates the percentage of cache misses out of total cache requests. |
Percentage |
Ideally the percentage should be low for high performance of the cache. |
Get hits percentage |
Indicates the percentage of cache hits out of total cache requests. |
Percentage |
High hit percentage is clear signal that cache is healthy and serving its purpose. |
Delete misses percentage |
Indicates the percentage of delete misses out of total cache requests. |
Percentage |
Ideally the percentage should be low for high performance of the cache. |
Delete hits percentage |
Indicates the percentage of delete misses out of total cache requests. |
Percentage |
High hit percentage is clear signal that cache is healthy and serving its purpose. |
Compare and swap misses percentage |
Indicates the percentage of Compare and Swap misses out of total cache requests. |
Percentage |
Ideally the percentage should be low for high performance of the cache. |
Compare and swap hits percentage |
Indicates the percentage of Compare and Swap hits out of total cache requests. |
Percentage |
High hit percentage is clear signal that cache is healthy and serving its purpose. |
Total number of get requests |
Indicates the total number of get requests received by current Memcached caching system instance. |
Number |
|
Total number of delete requests |
Indicates the total number of delete requests received by current Memcached caching system instance. |
Number |
|
Total number of compare and swap requests |
Indicates the total number of compare and swap requests received by current Memcached caching system instance. |
Number |
|