古詩詞大全網 - 成語查詢 - tornado的異步IO,長連接應該怎樣理解.長連接有哪些實際的應用

tornado的異步IO,長連接應該怎樣理解.長連接有哪些實際的應用

結合阻塞與非阻塞訪問、poll

函數可以較好地解決設備的讀寫,但是如果有了異步通知就更方便了。異步通知的意思是:壹旦設備就緒,則主動通知應用程序,這樣應用程序根本就不需要查詢設

備狀態,這壹點非常類似於硬件上“中斷”地概念,比較準確的稱謂是:信號驅動(SIGIO)的異步

I/O。可以使用signal()函數來設置對應的信號的處理函數。

再說下長連接

短連接是指通訊雙方有數據交互時,就建立壹個連接,數據發送完成後,則斷開此連接,即每次連接只完成壹項業務的發送。

長連接多用於操作頻繁,點對點的通訊,而且連接數不能太多情況。每個

TCP連接都需要三步握手,這需要時間,如果每個操作都是短連接,再操作的話那麽處理速度會降低很多,所以每個操作完後都不斷開,下次處理時直接發送數據

包就OK了,不用建立TCP連接。例如:數據庫的連接用長連接,如果用短連接頻繁的通信會造成socket錯誤,而且頻繁的socket

創建也是對資源的浪費。

而像WEB網站的http服務壹般都用短鏈接,因為長連接對於服務端來說會耗費壹定的資源,而像WEB網站這麽頻繁的成千上萬甚至上億客戶端的連接用短連接會更省壹些資源,如果用長連接,而且同時有成千上萬的用戶,如果每個用戶都占用壹個連接的話,那可想而知吧。所以並發量大,但每個用戶無需頻繁操作情況下需用短連好。

總之,長連接和短連接的選擇要視情況而定。