我有一個很大的C#/ WPF應用程序。此應用程序需要從其他「子」應用程序收集數據,這些應用程序將運行在Windows服務 - 同一網絡,不同的PC上。套接字是處理兩者之間通信的最佳方式(而不是遠程處理或其他方式)?套接字與服務對話是否有效?
回答
對於v3.5及更新版本中的跨進程通信,WCF是推薦的方法。套接字和命名管道可以/將工作,但你會發現通過WCF更好的支持。
上升爲支持評論。 – DaveE 2010-09-14 00:09:27
沒辦法。使用WCF。
我想說它最終取決於你的性能要求。將WCF看作套接字之上的抽象層。您爲分層付費的價格是性能,但如果WCF沒有爲您提供足夠的性能,我會感到驚訝。
在進程/機器之間傳輸大量字符串時,Wcf對我們來說失敗了,無數配置選項的文檔都很差。內存似乎特別糟糕地管理Wcf連接時發生抖動。我們最終編寫了自己的Rpc實現,使內存和Cpu保持在更合理的水平,但這是一項非常艱鉅的工作。 – spender 2010-09-14 00:40:56
我必須說我很驚訝,但是,那對我來說是一個相當熟悉的感覺。 :-) – 2010-09-14 00:45:20
WCF需要調整和配置才能獲得良好的性能。 – 2010-09-14 04:36:44
套接字是你能夠獲得的最快速的東西,所以如果你需要儘快完成,你應該使用套接字。他們比WCF更復雜,但作爲回報,您可以完全控制最低級別。
還要準備實際的瓶頸將在客戶端和服務器之間傳遞的對象的序列化/反序列化(當然如果它們很複雜)。
- 1. NodeJS和網絡套接字:檢查套接字來源是否與網絡套接字服務器相同
- 2. .NET中是否有多線程的TCP服務器套接字?
- 3. 我的服務器是否有PHP套接字?
- 4. Java套接字編程:服務器套接字是否可以啓動通信?
- 5. php套接字服務器檢查客戶端是否連接
- 6. HTML 5網絡套接字和XMPP服務器對話框
- 7. 像Tcl「套接字服務器」套接字服務器框架
- 8. Python服務器與庫套接字
- 9. Android服務與套接字編程
- 10. Web服務與套接字編程
- 11. 套接字編程與Web服務?
- 12. 與TCP套接字(服務器)通信
- 13. TLS與PHP服務器套接字
- 14. Python套接字服務器與選擇
- 15. 彗星與PHP套接字服務器?
- 16. JAVA套接字服務器與框架
- 17. (是否)Python套接字服務器比普通套接字對象的性能優勢?
- 18. 我的網絡服務是否有效?
- 19. 是否可以通過Apigee代理Web套接字服務?
- 20. java/android TCP套接字 - 檢測服務器是否離線
- 21. 我的UDP套接字服務器設計是否正確?
- 22. 關於檢查客戶端是否從服務器套接字
- 23. 如何檢查套接字服務器是否打開?
- 24. 檢查服務器套接字是否在另一端打開
- 25. ZeroMQ是否允許多個服務器套接字?
- 26. 使用java套接字時是否保證數據有效性?
- 27. Web服務器套接字
- 28. 套接字服務器
- 29. Android - 服務器套接字
- 30. PHP套接字服務器
我也對這個問題感興趣 – SinistraD 2010-09-14 00:07:36