我想創建一個移動消息服務,但我不知道使用套接字編程或Web服務哪個更好?套接字編程與Web服務?
創建此類服務時需要考慮哪些問題?如連接費用等。
如果您需要更多的細節,只需告訴我,然後再投票表決問題或關閉!
我想創建一個移動消息服務,但我不知道使用套接字編程或Web服務哪個更好?套接字編程與Web服務?
創建此類服務時需要考慮哪些問題?如連接費用等。
如果您需要更多的細節,只需告訴我,然後再投票表決問題或關閉!
由於他們對開發人員工具以及庫和框架的巨大興趣以及對他們的支持,Web服務一般來說「更容易」實現。但是,特別是如果您的有效負載很小(將消息看作典型的短信或推文的大小),那麼您使用webservices創建的開銷就會過高:通過無線網絡(如GPRS或UMTS)發送的字節仍然非常昂貴,到通過電纜或ADSL傳輸的字節。網絡服務帶有幾層不可見的信息,終端客戶也需要付費。因此,如果您的用例基於短消息,我至少會建議您進行一些帶寬模擬計算,並根據帶寬節省和應用複雜程度的增加做出決定。在看插座的同時,還要看一下UDP:如果你能忍受這樣一個事實,那就是基本上你把一個數據包丟給別人,而且在你的協議中沒有設計一些Ack機制,你永遠不會確定這個消息到達了,它非常高效,因爲沒有流量來創建和維護連接,甚至很長的消息都可以很好地在1個UDP數據包內傳輸。
編輯基於評論:
編輯2,我忘了提及的東西:移動網絡曾經是開放的,透明的網絡與公共IP地址標識的設備。 NATed移動網絡正在快速發展,這對「圍牆花園」內外的設備如何通信產生影響(NAT traversal)。設計溝通渠道時,您需要考慮到這一點。
誰投了下去!告訴我爲什麼 ?? – Adham
很難理解你在問什麼。 Web服務通過套接字工作 - 它不是一個或兩個。另外「有什麼擔心......」似乎基本上要求回答者寫一本書。 –
正如我所知,Web服務使用HTTP協議,其中HTTP數據包有很多額外的數據(頭),這意味着更多的流量消耗,是否有效地設計我們的協議,以減少使用套接字編程這樣的問題。關於considrations,我需要重要的頭條新聞,如果你不想要dertils .. – Adham