標籤:

nginx為什麼性能這麼優越?


可以看一下這篇文章:http://www.aosabook.org/en/nginx.html

這算是官方解釋。


叔度發的鏈接文章,我看過,對了解NGINX架構和設計理念很有幫助。但是分析源碼之後才能有質的認識,比如NGINX的數據結構設計很精巧,如ngx_array_t, 它其實做到了與數據類型無關、內存的管理、多進程模型、epoll非同步,timer紅黑樹等,為了追求性能有很多值得注意地方,如main函數開始的ngx_strerror_init()函數、重寫一些字元串函數等等。


Nginx伺服器提供了非同步的、非阻塞的Web服務,系統中的模塊各司其職,彼此之間通常使用網路、管道和信號等機制進行通信,從而保持了松耦合的關係。工作進程中事件處理機制的使用,在很大程度上降低了在網路負載繁重的情況下Nginx伺服器對內存、磁碟的壓力,同時保證了對客戶端請求的及時響應。

非常榮幸能夠和你一起溝通,交流這個問題。


Nginx之所以性能如此優越,是因為它使用了epoll和kqueue模型。

能承受高並發訪問的著名開業軟體Squid、Memcached採用的都是epoll網路I/O模型。


在linux性能優越,在windows上不如apache穩定。


推薦閱讀:

Nginx源碼中值得學習的編程風格有哪些?
微軟的 Web 伺服器為何能屹立不倒?
nginx 基本入門
有哪些知名網站Web伺服器是Nginx?
如何使用Let's Encrypt免費添加HTTPS

TAG:Nginx |