ggzwtj 发表于 2011-11-23 09:53

关于Redis的单线程读

最近在看key-list系统,redis中在读的时候使用的是单线程,说单线程在只有I/O操作的时候将速度优势发挥到最大,下面是几个不明白的地方:
1、多线程为什么会比单线程在I/O方面慢?是因为线程切换吗?能慢多少?
2、怎么样能减少线程切换的开销?如果少开几个线程,然后规定每个线程只能在指定CPU上面运行,这样做可以么?

非常感谢。

sychangchun 发表于 2012-01-27 21:19

帮顶。这个没搞地。

bigmoyo 发表于 2012-02-03 17:56

因为IO是瓶颈,那么多线程每个线程都IO实际没有任何意义。
于是,莫若在单线程内用好IO,尤其是在数据的组织上下功夫;
或者说只用一个线程(甚至是进程)负责IO,其他线程与该线程(甚至进程)通信。
页: [1]
查看完整版本: 关于Redis的单线程读