SLOWLOG GET
command to list the slow operations. This can help you understand if specific commands are causing disk I/O bottlenecks.iostat
command (on Unix-like systems) to monitor disk I/O wait and service times. High wait times can indicate disk I/O bottlenecks.save
directives in the configuration file. For AOF, if appendfsync
is set to always
, consider changing it to everysec
to reduce disk I/O.INFO memory
to check memory usage. High memory usage can lead to swapping, which severely impacts disk I/O. If swapping is occurring, consider adding more memory or reducing memory usage by adjusting data eviction policies with the maxmemory-policy
setting.MEMORY USAGE <key>
to check the memory footprint of your largest keys. Large keys, especially lists, sets, or hashes, can lead to inefficient operations that impact disk I/O during persistence.client-output-buffer-limit
settings if necessary.echo never > /sys/kernel/mm/transparent_hugepage/enabled
to disable it.no-appendfsync-on-rewrite
Option: If AOF and RDB persistence are both enabled, enabling no-appendfsync-on-rewrite
can reduce disk I/O by avoiding simultaneous AOF rewrite and RDB snapshot operations.bgrewriteaof
command can be manually triggered during low traffic periods. This rewrites the AOF file to optimize it and can reduce disk I/O if the file size is significantly reduced.MONITOR
(cautiously, as it can reduce performance) to observe real-time command execution. Look for patterns that cause excessive or unnecessary disk I/O and optimize your application's data access patterns accordingly.INFO stats
to Check Command Stats: This can give you insight into the commands being processed and help identify any commands contributing to the disk I/O bottleneck.Each of these actions should be taken based on the specific context and configuration of your Redis setup, and the impact of changes should be carefully monitored.
Let Dr. Droid create custom investigation plans for your infrastructure.
Book Demo