Redis 是单线程,主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的,这也是 Redis 对外提供键值存储服务的主要流程。 采用多线程开发一般会引入同步原语来保护共享资源的并发访问,这也会降低系统代码的易调试性和可维护性。为了避免这些问题,Redis 直接采用了单线程模式。 但是 Redis 却能使用单线程模型达到每秒数十万级别的处理能力,这是为什么呢?

  • 操作在内存上完成
  • 高效的数据结构
  • 多路复用机制,IO操作中能并发处理大量请求,实现高吞吐率


乌托邦

xl

Stay hungry, Stay foolish.