nodelay模式是什么?
NODELAY模弋就意味著禁用了Nagle算法,允許小包的發(fā)送。對(duì)于延時(shí)敏感型,同時(shí)數(shù)據(jù)傳輸量比較小的應(yīng)用,開啟TCP_NODELAY選項(xiàng)無疑是一個(gè)正確的選擇。
比如,對(duì)于SSH會(huì)話,用戶在遠(yuǎn)程敲擊鍵盤發(fā)出指令的速度相對(duì)于網(wǎng)絡(luò)帶寬能力來說,絕對(duì)不是在一個(gè)量級(jí)上的,所以數(shù)據(jù)傳輸非常少;而又要求用戶的輸入能夠及時(shí)獲得返回,有較低的延時(shí)。
如果開啟了Nagle算法,就很可能出現(xiàn)頻繁的延時(shí),導(dǎo)致用戶體驗(yàn)極差。
當(dāng)然,你也可以選擇在應(yīng)用層進(jìn)行buffer,比如使用java中的buffered stream,盡可能地將大包寫入到內(nèi)核的寫緩存進(jìn)行發(fā)送;vectored I/O(writev接口)也是個(gè)不錯(cuò)的選擇。
上一篇bladex框架怎么樣
下一篇做游戲推廣怎么樣