惊群问题
跳到导航
跳到搜索
惊群问题是计算机科学中,当许多进程等待一个事件,事件发生后这些进程被唤醒,但只有一个进程能获得CPU执行权,其他进程又得被阻塞,这造成了严重的系统上下文切换代价。[1][2]
解决办法可能有:
- 不希望把所有进程都唤醒,就采用定点唤醒某一个进程的做法。
- 尽量避免进程上下文切换。
C10K问题(Concurrent 10,000 Connections),指服务器同时支持上万个客户端连接的问题。可用Linux的epoll,FreeBSD的kqueue,Solaris的/dev/poll来解决。
C10M问题,是千万级并发实现。Linux上通常用epoll实现。
参考文献[编辑]
- ^ A discussion of this observation on Linux. [2017-11-27]. (原始内容存档于2021-03-09).
- ^ A short description of the problem. [2017-11-27]. (原始内容存档于2020-11-11).