我是一位經驗豐富的C#開發人員,但到目前爲止我還沒有開發TCP服務器應用程序。現在,我必須開發一個高度可擴展的高性能服務器,它可以處理至少5-10個併發連接:從GPS設備通過GPRS獲取字節數據。使用Wcf服務的Tcp服務器
一個共同的溝通過程應該是這樣的:
GPS設備發起到我的服務器的連接 我的服務器的答案,如果我想獲得的數據 裝置發送GPS數據 我的服務器發送報告,設備有關獲取它(SG像校驗) 從GPS,reportm獲得新數據,並再次出現這種情況,再後來 GPS設備關閉連接 所以,在我的服務器我需要
跟蹤連接/活動的客戶端 關閉任何客戶端從服務器端 趕上事件,當一個設備關閉連接 獲取字節數據 發送數據到客戶端 我開始通過互聯網瞭解這個主題,但它似乎是我的噩夢。有很多方法,但我無法找出哪個是最好的。
異步套接字方法對我來說似乎是最好的,但是在這種異步樣式中編寫代碼很糟糕,並且不容易調試。
所以我的quetsion是:你認爲在C#中實現高性能TCP服務器的最佳方式是哪一種?你知道有這麼好的開源組件嗎? (我嘗試了幾個,但我找不到一個好的。)
在此先感謝,任何專家的答案將appriciated!