Before the "Redis 6" version, Redis was "single-threaded" for reading, parsing, and executing commands. Starting from Redis 6, IO multi-threading was introduced.
The IO thread is responsible for reading commands, parsing commands, and returning results. When enabled, it can effectively improve IO performance.
I drew a schematic diagram for your reference
As shown in the figure above, the main thread and IO thread will jointly participate in the reading, parsing and result response of commands.
But the one that executes the command is "main thread".
The IO thread is closed by default. You can modify the following configuration in redis.conf to enable it.
io-threads 4 io-threads-do-reads yes
"io-threads" is the number of IO threads (including the main thread). I suggest you set different values according to the machine for stress testing and get the optimal value.
The above is the detailed content of How to enable IO multi-threading in Redis. For more information, please follow other related articles on the PHP Chinese website!