數據傳輸方式

本文摘自原文:https://www.cnblogs.com/111testing/p/6581062.html

 

1、socket

        定義:socket也稱作"套接字",實現服務器和客戶端之間的物理連接,並進行數據傳輸。

        協議:主要有udp和tcp兩個協議,處於網絡協議的傳輸層。

        優點:1) 傳輸數據爲字節級,傳輸數據可自定義,數據量小(對於手機應用講:費用低)。
                   2) 傳輸數據時間短,性能高。
                   3) 適合於客戶端和服務器端之間信息實時交互。
                   4) 可以加密,數據安全性強。

        缺點: 1) 需對傳輸的數據進行解析,轉化成應用級的數據。
                    2) 對開發人員的開發水平要求高。
                    3) 相對於http協議傳輸,增加了開發量。

        適用範圍:socket 傳輸方式適合於對傳輸速度,安全性,實時交互,費用等要求高的應用中,如網絡遊戲,手機應用,銀行內部交互等。

 

2、http

        定義:常見於B/S架構前後臺數據交互,常見的方式是 http 的 post 和 get 請求。

        協議:基於http,處於網絡協議的應用層。

        優點:  1) 基於應用級的接口使用方便。
                     2) 程序員開發水平要求不高,容錯性強。

        缺點:  1) 傳輸速度慢,數據包大(http協議中包含輔助應用信息)。
                     2) 如實時交互,服務器性能壓力大。
                     3) 數據傳輸安全性差。

        適用範圍:基於http協議傳輸方式適合於對傳輸速度,安全性要求不是很高,且需要快速開發的應用。如公司oa系統,互聯網服務等。

 

3、Web Service

        定義:採用SOAP協議的通信標準,SOAP協議基於XML語言,採用 http 傳輸通信(簡單講 Web Service = http + xml)。

        協議:採用SOAP協議,基於http,處於網絡協議的應用層。

        優點:  1) 不需要針對數據流的發送和接收進行處理,是一種跨平臺的面向對象遠程調用技術。
                     2) 接口支持面向對象,Web Service會將對象進行序列化後通過流傳輸。
                     3) 走http協議,一般不會被防火牆屏蔽。

        缺點:  1) webservice要經過兩次序列化,所以導致其傳輸速度慢。
                     2) 其餘同http缺點一樣。

        適用範圍:WebService不需要針對數據流的發送和就收進行處理,是一種跨平臺的面向對象遠程調用技術。

 

總結:http 協議都是對 socket 的再一次封裝,socket 是基於傳輸層的,所以socket 通信的即時性比http好,適合傳輸大數據量的數據,但是開發成本高,相較於http 難度更大。 http 數據傳輸需要服務器支撐,開發難度小,適用於 B/S 架構。 Web Service 基於http,採用 XML的形式,跨平臺行更好,兼容性更強。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章