Going Infinite,處理Go / Eran Yanay中的1百萬個websockets連接



https://speakerdeck.com/gopherconil/eran-yanay

Go HTTP伺服器提供了很好的可伸縮性,為每個連接分配了一個goroutine,並重用了Go運行時的高效復用和調度。儘管此技術幾乎適合大多數情況,但由於內存消耗大,Websockets應用的規模有限

在本講座中,我們將展示如何實現自己的事件循環機制,以克服這些限制並有效管理數百萬個並發連接,同時最大程度地減少資源利用率。我們將比較樸素的實現的內存佔用情況,並依靠使用go-routines處理這些連接的標準方法,探索使用epoll的困難,並選擇純go來高效地調度和維護所有這些並發連接。

2 comments

Comments are closed.