如題,看到現在很多人都在講nginx,哪位給具體分析分析?
Nginx 不同於 Apache2 的一點就是,Nginx 採用單線程,非阻塞,非同步 IO 的工作模型。
Apache2 對於每一個請求,都會創建一個新進程或線程,會浪費很多記憶體和 CPU 時間,而 Nginx 使用作業系統提供的IO多路复用技术(epoll), 在一個線程中處理所有的請求。當一個 IO 作業開始的時候,Nginx 不會等待作業完成就會去處理下一個請求,等到某個 IO 作業完成後,Nginx 再回過頭去處理這次 IO 的後續工作。
IO多路复用技术(epoll)
我有個疑問 Nginx 都是短鏈接,epoll優勢是不是無法發揮,io異步肯定是快
Nginx 不同於 Apache2 的一點就是,Nginx 採用單線程,非阻塞,非同步 IO 的工作模型。
Apache2 對於每一個請求,都會創建一個新進程或線程,會浪費很多記憶體和 CPU 時間,而 Nginx 使用作業系統提供的
IO多路复用技术(epoll)
, 在一個線程中處理所有的請求。當一個 IO 作業開始的時候,Nginx 不會等待作業完成就會去處理下一個請求,等到某個 IO 作業完成後,Nginx 再回過頭去處理這次 IO 的後續工作。我有個疑問 Nginx 都是短鏈接,epoll優勢是不是無法發揮,io異步肯定是快