在服務器提供網頁後,Apache連接是否立即關閉?另外,如果您將所有靜態資產(JS,CSS,圖像等)託管在與您的站點相同的服務器上,那麼這會如何影響Apache連接?Apache連接如何工作?
回答
無論Apache的服務頁面後立即關閉連接取決於
- 客戶端是否有
Connection: Keep-Alive
頭請求它。 - 設置
KeepAlive
和KeepAliveTimeout
參數。請參閱http://httpd.apache.org/docs/2.2/mod/core.html#keepalive
- 客戶端是否有
所有類型的內容都使用同一個「連接池」。
好問題:因爲所有內容使用相同的KeepAlive設置,您可能希望設置不同的服務器來處理不同類型的內容。
-
你的下一個問題:
- MaxKeepAliveRequests被記錄在同一頁上:http://httpd.apache.org/docs/2.2/mod/core.html#maxkeepaliverequests
它的請求總數客戶端可以作出一個「養活着連接「。如果你有很多的服務器資源,你應該保持高。或者,如果您的服務器資源較少或客戶端較多,則可以降低它以將客戶端發送出去,並給予其他人一個回合。不要忘記,在客戶端的最後一次請求之後,服務器將在關閉連接之前等待「KeepAliveTimeout」秒,並讓該工作者可用於其他客戶端。
- MaxRequestsPerChild值記錄在這裏:http://httpd.apache.org/docs/2.2/mod/mpm_common.html#maxrequestsperchild
它的客戶端請求的數量(和個人要求在保持活動連接數的每個靜止1)子服務器進程將死之前。不同的MPM(專爲實現這些子服務器進程的各個平臺開發即Apache的後端)表現不同:
- 線程的MPM有默認值0 =永遠不會死,因爲所有線程共享反正相同的內存空間。
- 對於使用單個子進程的MPM,允許孩子每隔一段時間就會死掉(可能會清理服務器資源和內存泄漏,如果有的話)更有意義。
這是一篇很棒的文章。謝謝!現在我的下一個問題是,MaxRequestsPerChild和MaxKeepAliveRequests有什麼區別? – skaterdav85
真的,你應該研究文檔。 –
您的問題的答案可能是。根據您的KeepAlive
設置,連接可能會保持打開狀態。如果您完全關閉KeepAlive
,則請求滿足後連接將關閉。如果您有KeepAlive
(更典型),則連接將保留一段可配置的時間,等待來自分配連接的客戶端的另一個請求。
請求是用於動態生成的頁面還是用於靜態內容對於此行爲無關緊要,但是,當從服務器中下載靜態內容時,您最終將重新使用瀏覽器建立的連接KeepAlive
開啓的情況。這可以提供更好的性能,因爲您沒有爲每個請求重新建立連接的開銷。
下面是關於考慮一個鏈接到一個很好的文章使用KeepAlive
http://abdussamad.com/archives/169-Apache-optimization:-KeepAlive-On-or-Off.html
- 1. Tomcat工作人員 - 連接Tomcat和Apache
- 2. Apache Spark - 連接拒絕工作人員
- 3. unixODBC工作,但Apache不會連接
- 4. 連接池如何工作?
- 5. php如何連接Apache Zeppelin
- 6. 自連接如何工作? (MS SQL)
- 7. EventMachine中的TLS連接如何工作?
- 8. 導軌連接池如何工作?
- 9. 連接池在Ado.net中如何工作?
- 10. Nodejs MongoDB連接池如何工作?
- 11. SQL連接如何實際工作?
- 12. 這個SQL連接將如何工作?
- 13. 如何使apache進程的TCP連接?
- 14. 如何從.NET連接到Apache OfBiz
- 15. 如何將eclipse IDE連接到apache Ignite?
- 16. 如何在apache中連接變量
- 17. 如何連接Apache Solr與mysql
- 18. MySQL - ODBC連接失敗,工作臺連接工作
- 19. Apache目錄工作室'打開連接'遇到錯誤
- 20. PHP上的Oracle OCI連接已停止工作 - Apache返回ERR_CONNECTION_RESET
- 21. Apache-Forbidden 403 -Apache關閉時工作 - 其他局域網無法連接
- 22. Apache拒絕連接
- 23. Apache連接超時
- 24. Jelastic Apache SSH連接
- 25. Apache的PHP連接
- 26. 監控Apache連接
- 27. 手錶連接不工作
- 28. QT MYSQL連接不工作
- 29. PHP,sqlsrv連接不工作
- 30. MongoDB PHP連接不工作
不一定。與其他幾乎一樣,它取決於各種因素。在這種情況下,這些因素包括使用的Apache配置和HTTP頭。 –