1. 程式人生 > >webservice、socket和http 區別(一)

webservice、socket和http 區別(一)

webservice是基於http協議的soap協議的封裝和補充,如果你考慮公共穩定的介面,你可以努力的考慮一下。
至於socket和http、webservices是否放在一起比較和考慮
主要還是看你關心的角度,而這個角度可以是技術層面的 ,也可以是使用者需求層面

1 資料傳輸方式
1.1 socket傳輸的定義和其特點
    所謂socket通常也稱作"套接字",實現伺服器和客戶端之間的物理連線,並進行資料傳輸,主要有udp和tcp兩個協議。socket處於網路協議的傳輸層。
    udp協議:廣播式資料傳輸,不進行資料驗證
    tcp協議:傳輸控制協議,一種面向連線的協議,給使用者程序提供可靠的全雙工的位元組流,


socket傳輸的特點:
   優點
   1) 傳輸資料為位元組級,傳輸資料可自定義,資料量小(對於手機應用講:費用低)
   2) 傳輸資料時間短,效能高
   3) 適合於客戶端和伺服器端之間資訊實時互動
   4) 可以加密,資料安全性強
   缺點:
   1) 需對傳輸的資料進行解析,轉化成應用級的資料
   2) 對開發人員的開發水平要求高
   3) 相對於http協議傳輸,增加了開發量

1.2 基於http協議傳輸的定義和其特點

   目前基於http協議傳輸的主要有http協議 和基於http協議的soap協議(web service),常見的方式是 http 的post 和get 請求,web 服務。

基於http協議的傳輸特點
   優點:
   1) 基於應用級的介面使用方便
   2) 程式設計師開發水平要求不高,容錯性強
   缺點:
   1) 傳輸速度慢,資料包大(http協議中包含輔助應用資訊)

   2) 如實時互動,伺服器效能壓力大。

   3) 資料傳輸安全性差

2 各資料傳輸方式的適用範圍
 2.1 socket傳輸適用範圍
  基於socket傳輸的特點:socket 傳輸方式適合於對傳輸速度,安全性,實時互動,費用等要求高的應用中,如網路遊戲,手機應用,銀行內部互動等
 2.2 基於http協議傳輸的適用範圍
  基於http協議傳輸的特點:基於http協議傳輸方式適合於對傳輸速度,安全性

  要求不是很高,且需要快速開發的應用。如公司oa系統,網際網路服務等

 把socket和http、webservices等等放在一起對比不是很合適,所謂http云云的都是對socket進行了一次包裝而已,後者更加底層。不過對比http和webservices的異同點的話。