erlang使用{packet, 0}能使用{active, N}選項,但要本身解包

舊項目中erlang使用{packet, 0},使用的是{active, false}選項。因爲false是最慢的,準備改版的時候,使用{active, N}選項,但失敗了。socket

使用{packet, 0},而後啓動{active, N}選項時,erlang底層解包時出現粘包的狀況,數據格式錯誤,根本跟協議對不上。.net

後來參考:erlang 解決socket 數據粘包問題, 更是證明了這個問題。blog

不少博文都建議{packet, 4} + {active, N}.get


可使用{active, N}, 但要本身手動解包。erlang

相關文章
相關標籤/搜索