微軟MSDN給出的使用.Net開發Windows Form網路應用相關程式的最佳化建議

來源:互聯網
上載者:User

 

此文主要針對使用微軟的 DotNet 平台,做網路相關的WinForm程式的開發。

.NET平台中,網路相關的內容,基本全部包含於 System.Net 這個命名空間下。

 

MSDN上,微軟官方給出的最佳化建議如下:

 

應儘可能使用 WebRequestWebResponse,而不要類型轉換為子代類。使用 WebRequest 和 WebResponse 的應用程式可以利用新的 網際網路通訊協定 (IP),而不需要進行大範圍的代碼更改,有利於順利升級。

 

當使用 System.Net 類編寫運行在伺服器上的 ASP.NET 應用程式時,從效能的角度來看,使用 GetResponse GetResponseStream 的非同步方法呼叫通常更好。此條同樣適用於Windows程式的開發,為避免主UI阻塞,提升UE,非同步方式也是更佳的選擇。

 

對 Internet 資源開啟的串連數可能對網路效能和輸送量有顯著的影響。預設情況下,System.Net 對每個主機的每個應用程式使用兩個串連。設定應用程式的 ServicePoint 中的 ConnectionLimit 屬性可為特定主機增加此數目。設定 ServicePointManager.DefaultPersistentConnectionLimit 屬性可為所有主機增加此預設值。

 

當編寫通訊端(Socket)層級的協議時,請儘可能嘗試使用 TCPClient 或 UDPClient,而不是直接向 Socket 中寫。這兩個用戶端類封裝 TCP 和 UDP 通訊端的建立,而不需要您處理串連的細節。

 

當訪問要求憑據的網站或應用時,請使用 CredentialCache 類建立憑據的緩衝而不要對每個請求都提供它們。CredentialCache 類搜尋緩衝以尋找要提供給請求的適當憑據,從而使您不必根據 URL 來建立和提供憑據。

06a8cfe2

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.