Linux
Apache mpm 事件增加 StartServers 對記憶體沒有影響
我在 centos 伺服器上使用 apache mpm 事件,配置如下:
<IfModule event.c> StartServers 8 ServerLimit 64 ThreadsPerChild 256 MaxRequestWorkers 16384 MaxConnectionsPerChild 10000 MinSpareThreads 125 MaxSpareThreads 250 ThreadLimit 256 KeepAlive On KeepAliveTimeout 2 MaxKeepAliveRequests 500 </IfModule>
然後我將值
StartServers
從 8 增加到 32 並重建並重新啟動 apache,但我看不到系統的可用記憶體有任何差異。當我增加 startServers 的值時,我希望看到更多的 ram 被 apache 使用。為什麼ram使用沒有變化?這是否意味著我做錯了什麼?
額外的“伺服器”被分叉,這(最初)是一個非常輕量級的操作,因為實際上並沒有為每個程序複製記憶體。原始程序和分叉程序將繼續共享相同的記憶體頁面,直到它們被寫入時使用寫時複製機制。只有在每個分叉程序、每個 apache“伺服器”開始承受負載時,您才會看到記憶體消耗的相關增加。