如今咱們通常使用應用程序或者連接庫相互進行通訊。例如,咱們常常經過一個使用http協議的客戶端連接庫,從網站服務器中得到信息,而且經過網站服務,調用一些遠程程序。ajax
然而,一些通用協議或者它們的實現方式並非很規範。就好比咱們不喜歡使用一個通用http協議的服務器進行大文件交換,郵件以及實時信息的發送,例如金融信息和多玩家的遊戲數據等。這時就要求有一個針對特定需求的高度優化的協議。舉個例子,你可能想將一個優化後的http協議用於基於ajax的聊天應用程序,流媒體或者時大文件的傳輸。你甚至可能想針對你的需求設計和實現一個全新的協議。服務器
還有一種不可避免的狀況就是,你要處理之前的協議確保它與舊系統之間的互通性。在這種狀況下,咱們要關心的是如何快速地實現好一個協議,而不是去犧牲現有程序的穩定性和性能。網絡
=====================================================框架
Netty是一套提供了高效的異步事件驅動的網絡應用框架,可用於保證服務端和客戶端高性能,高擴展性協議的同時進行快速開發。異步
換言之,Netty是一個基於NIO的c/s框架,可讓咱們快速和輕易地開發網絡應用中服務端和客戶端的協議。它極大地簡化了像TCP和UDP這類服務端網絡開發。性能
「快速輕易」並非意味着一個現成的應用會遇到擴展和性能的問題。Netty在許多協議像FTP,SMTP,HTTP以及許多以往的二進制和基於文本的協議的實現方式中,吸收了經驗,並進行了嚴謹的設計。最後,Netty成功找到一種方式在保持性能,穩定性,靈活性的同時能夠進行輕鬆開發。優化
有些用戶可能已經接觸過其餘網絡應用框架,它們也有着相同的優勢,這時你可能會問Netty與其餘框架對比有什麼不一樣。答案是:創建的原理不一樣。Netty的設計是旨在讓你無論在調用API仍是在實現上獲得最好的體驗。它是無形的,可是你卻能體會到該原理給你的生活帶來了方便。網站