Skip to content

Instantly share code, notes, and snippets.

View wuxinwei's full-sized avatar

Mark Woo wuxinwei

View GitHub Profile
@wuxinwei
wuxinwei / NOTE.md
Created October 13, 2017 11:40 — forked from tcnksm/NOTE.md
Small note of gRPC Best Practice @ CoreOSFest 2017
@wuxinwei
wuxinwei / keybase.md
Created September 12, 2017 20:36
keybase.md

Keybase proof

I hereby claim:

  • I am wuxinwei on github.
  • I am wuxinwei (https://keybase.io/wuxinwei) on keybase.
  • I have a public key ASDEpIBC-BjfkhfZ65UzxzbxVbo5oIEyPUXcBL6wSvRptgo

To claim this, I am signing this object:

本文基本上这为两篇文章的翻译和整合 -- Scalable networking And Why are event-driven server so great

OPPC模型瓶颈

传统服务器模型如Apache为每一个请求生成一个子进程。当用户连接到服务器的一个子进程就产生,并处理连接。每个连接获得一个单独的线程和子进程。当用户请求数据返回时,子进程开始等待数据库操作返回。如果此时另一个用户也请求返回数据,这时就产生了阻塞。

这种模式在非常小的工作负荷是表现良好,当请求的数量变得太大是服务器会压力过于巨大。 当Apache达到进程的最大数量,所有进程都变得缓慢。每个请求都有自己的线程,如果服务代码使用PHP编写时,每个进程所需要的内存量是相当大的[1]。

fork()操作延时