Redis Network Asynchronization
Application scenario: Redis incurs significant network overhead in both pipeline and non-pipeline scenarios. In non-pipeline mode, read/write operations block the current thread until data is available, requiring frequent context switches. This leads to poor performance under high concurrency, often causing blocking delays.
Technical principle: The Redis network asynchronization feature enhances performance by offloading network I/O operations to KRAIO for asynchronous batch processing. This reduces system calls and context switching, enabling non-blocking Redis operations and significantly improving throughput. When submission queue polling (sqpoll) mode is enabled, KRAIO utilizes a dedicated kernel thread to automatically handle network I/O events, eliminating the need for system calls during I/O operations.
Performance metric: In the Docker+bond4+IPVLAN networking with 2 vCPUs and 10 GB memory, the redis-benchmark performance is 20% higher than that of the open source Redis.
