2009-11-15 63 views
0

Apache的worker MPM爲每個進程創建多個線程,每個線程處理一個請求。從2.6開始,Linux內核使用本地POSIX線程庫,它具有1:1線程模型。鑑於此,如果有100個同時發生的請求被服務(一個請求 - >一個線程 - >一個進程),我希望看到100個apache進程。但是,經過一些真實世界的測試後,我發現情況並非如此。這裏發生了什麼?Apache worker MPM和Linux線程

回答

1

NPTL的1對1模型並不意味着每個進程有1個線程。它意味着一個用戶級線程到一個內核線程,因此不需要像mxn模型那樣的兩個調度器。這在NPTL設計here中有詳細說明。