程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> WCF的Restful和TCP方式調用性能比較,wcfrestful

WCF的Restful和TCP方式調用性能比較,wcfrestful

編輯:C#入門知識

WCF的Restful和TCP方式調用性能比較,wcfrestful


1. 實驗背景
關於WCF提供分布式訪問服務,最常用的兩種方式Restful方式和Tcp方式,在本地測試了一把。
結果顯示,還是Rest方式,在壓力測試下,性能最佳。
而且處於跨平台的考慮,和自動化測試方便,更會采用Restful方式提供服務。

2. WCF服務功能描述:
該服務為所有客戶端(CS客戶端或B/S浏覽器端),提供實時和統一的不重復的流水號

3. 測試結果
測試1: 基於Restful 方式提供服務,客戶端使用http路由請求方式訪問服務:
Rest服務地址: http://xxx.xxx.xxx.xxx:6211/ITSTemplate.Study.RestAPI/SeqService/
兩個Client,分別調用100000次,平均調用時間:0.59~0.61ms,性能是TCP方式的50倍(2.66/0.59)。

調用前,可以通過netstat -aon|findstr "6211", Restful還沒有客戶端調用實例。



調用中,可以通過netstat -aon|findstr "6211", Restful有2個客戶端調用實例。



調用完畢,最後一次調用完畢,大概1分鐘左右,WCF會自動釋放服務端建立的6211端口實例,可以看見每次平均調用的時間為: 0.59~0.61 毫秒



測試2: 基於TCP 方式提供服務,客戶端使用接口Libary引用類庫方式訪問服務:
TCP服務地址: net.tcp://xxx.xxx.xxx.xxx:6212/ITSTemplate.Study.RestAPI/SeqService/
兩個Client,分別調用100000次,平均調用時間: 2.66 s
 
調用前,可以通過netstat -aon|findstr "6212", TCP還沒有客戶端調用實例。 


 
調用中,可以通過netstat -aon|findstr "6212", TCPl有2個客戶端調用實例。



調用完畢,最後一次調用完畢,大概1分鐘左右,WCF會自動釋放服務端建立的6211端口實例,可以看見每次平均調用的時間為: 2.66 毫秒


 
總結:下一節,我將測試在遠程雲服務器,測試REST的並發性能; 設置REST的響應超時時間為1秒。
            並且通過MQ方式,盡可能解決服務器對並發請求的處理能力,對客戶端的業務請求做:異步請求和異步響應。 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved