首頁  >  文章  >  運維  >  nginx和netty區別

nginx和netty區別

(*-*)浩
(*-*)浩原創
2019-06-10 16:21:5713916瀏覽

Nginx是一個高效能的Web和反向代理伺服器。

nginx和netty區別

它具有有很多非常優越的功能:

作為Web 伺服器:比起Apache, Nginx 使用更少的資源,支援更多的並發連接,體現更高的效率,這點使Nginx 尤其受到虛擬主機提供者的歡迎。能夠支援高達50,000 個並發連接數的回應,感謝Nginx 為我們選擇了epoll and kqueue 作為開發模型.

作為負載平衡伺服器:Nginx 既可以在內部直接支援Rails 和PHP,也可以支援作為HTTP代理伺服器對外進行服務。 Nginx 用 C 編寫, 不論是系統資源開銷還是 CPU 使用效率都比 Perlbal 要好的多。

作為郵件代理伺服器: Nginx 同時也是一個非常優秀的郵件代理伺服器(最早開發這個產品的目的之一也是作為郵件代理伺服器),Last.fm 描述了成功並且美妙的使用經驗。

Nginx 安裝非常的簡單,設定檔非常簡潔(也能夠支援perl語法),Bugs非常少的伺服器: Nginx 啟動特別容易,幾乎可以做到7*24不間斷運行,即使運行數個月也不需要重新啟動。你也能夠在 不間斷服務的情況下進行軟體版本的升級。

Netty是由JBOSS提供的一個java開源框架。

Netty提供非同步的、事件驅動的網路應用程式框架和工具,以快速開發高效能、高可靠性的網頁伺服器和用戶端程式。

也就是說,Netty 是一個基於NIO的客戶、伺服器端程式設計框架,使用Netty 可以確保你快速且簡單的開發出一個網路應用,例如實現了某種協定的客戶、服務端應用。 Netty相當於簡化和流線化了網路應用的程式開發過程,例如:基於TCP和UDP的socket服務開發。

「快速」和「簡單」並不用產生維護性或效能上的問題。 Netty 是一個吸收了多種協定(包括FTP、SMTP、HTTP等各種二進位文字協定)的實作經驗,並經過相當精心設計的專案。最終,Netty 成功的找到了一種方式,在保證易於開發的同時也保證了其應用的性能,穩定性和伸縮性。

特點

設計

#針對多種傳輸類型的統一介面- 阻塞與非阻斷

#簡單但更強大的線程模型

真正的無連接的資料報套接字支援

連結邏輯支援複用

易用性

大量的Javadoc 和程式碼實例

除了在JDK 1.6 額外的限制。 (一些特徵是只支援在Java 1.7 。可選的功能可能有額外的限制。)

效能

比核心Java API 更好的吞吐量,較低的延時

資源消耗較少,這得益於共享池和重複使用

減少記憶體拷貝

健壯性

消除由於慢,快,或重載連接產生的OutOfMemoryError

消除經常發現在NIO 在高速網路中的應用中的不公平的讀/寫比

#安全性

完整的SSL / TLS 和StartTLS 的支援

#運行在受限的環境例如Applet 或OSGI

社群

發布的更早和更頻繁

社群驅動 

更多Nginx相關技術文章,請造訪Nginx使用教學欄位進行學習! 

以上是nginx和netty區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn