[英]Java android client communication with C# server
我目前正在編寫一個具有客戶端服務器架構的應用程序。
客戶端是 Java android 應用服務器是 C# 應用。
客戶端將從服務器拉取數據,但在某些情況下也會將一些數據推送到 C# 服務器。
服務器需要轉發客戶端的數據是數據結構列表(可能是 XML 的形式?),有時是二進制數據,如文件。
客戶端和服務器通過無線網絡進行通信。
速度和可擴展性是我在系統設計中的首要任務,...
我必須自己編寫服務器和客戶端。 我將使用 sockets 進行通信。
我需要您建議我應該使用哪種協議在 Java 客戶端和 C# 服務器之間交換數據。
我應該在 java 和 C# 中編寫類似的數據結構(這似乎是多余的)並序列化它們嗎?
或者我應該交換 xml?
我還不確定最好的方法是什么。基本上會有來自客戶端的命令,服務器將響應數據
請就此主題向我提供建議,通過 wifi 傳輸的數據可能高達幾千兆,因此速度非常重要。
我相信WCF
可能適用於此, WCF
使用 soap,因此 Java 實現應該運行良好。 WCF
也支持流媒體,所以可以傳輸大文件,不過我不確定Java是否支持流媒體協議。
至於性能,您可能會受到設備速度而非協議的限制。
看看來自 TechEd 2011 的 session:“我的客戶正在使用 iPhone/Android,但我是 Microsoft Guy。現在怎么辦?”
http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/DPR304
如果您想在客戶端和服務器之間共享代碼(如果序列化/反序列化有意義),可能值得研究一下MonoDroid 。
由於我不知道你在建造什么,我建議你在繼續之前閱讀 REST。 它應該為您提供寶貴的指導,說明如何創建一個可以被各種客戶輕松使用的漂亮的 API。
好吧,總是有 JSON。它應該在兩端得到很好的支持,並且很容易讓您的服務器生成和客戶端使用。 不確定它是否有助於解決您的帶寬問題...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.