Redis uses its own event loop library called ae (Asynchronous Events). It wraps OS-level I/O multiplexing: epoll on Linux, kqueue on macOS/BSD, and select as fallback. The loop handles two types of events — file events (socket reads/writes) and time events (scheduled tasks like key expiry, persistence). Everything runs in a single-threaded loop, processing one event at a time.