Socket連線的疑難雜症

2022-02-16 05:08:41 字數 507 閱讀 7454

這些天終於搞定執行緒排程的問題

開始重點攻打socket

c#操作socket還是比較方便

但終於還是出了問題

我這個程式用到的socket也不算多。大概50個socket客戶端連線到internet上不同伺服器上,用的是tcp協議。資料傳輸內容是一些瑣碎的包,用到網路頻寬大概512bps

問題產生在資料延遲上了

當開啟幾個socket的時候,效果非常好,實時性很高,延遲穩定

然而開到40個socket的時候,從伺服器返回的資料報延遲就不穩定了。多數穩定,但有20%左右的資料報會延遲500~1000ms。我的這個程式對實時性要求很高,這個延遲可以說是種災難。

每個socket都設定了nodelay關閉了微軟的nagle

每個socket是不同的執行緒操作,在程式上不存在阻塞問題。

cpu占用很低,2%左右。也不是資源問題。

網路頻寬沒有問題,ping的延遲也很穩定

請指點一下,到底**出了問題呢??

謝謝各位

Hadoop疑難雜症

前天安裝了pig,本來寫了條pig latin,但一直卡在 17 05 07 17 47 07 info mapreduce.job running job job 1494150363568 0001跑不通,想著肯定是mapredcue自身有問題,於是開始了艱苦的檢錯之旅,從csdn到stackf...

Appium疑難雜症

坑之初體驗 1.session大於60秒沒接收到命令自動關閉 python desired caps 在啟動配置裡面加入newcommandtimeout引數 desired caps newcommandtimeout 200 但是注意cnpm預設在當前目錄安裝npm包。3.uiautomatio...

疑難雜症 列舉

1.列舉是使用者自定義的整數型別 2.關於列舉的一般用法,參照 c 中的列舉 3.從字串中獲取列舉值 定義如下的列舉 public enum timeofday 從乙個字串得到列舉值,並轉換為整數 timeofday time timeofday enum.parse typeof timeofda...