日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

C# http 性能优化500毫秒到 60 毫秒

發布時間:2023/11/27 生活经验 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C# http 性能优化500毫秒到 60 毫秒 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

來源:https://www.cnblogs.com/hnsongbiao/p/9815808.html

?

偶然發現 C# 的 HttpRequest 要比 Chrome 請求同一Url 慢好多。C# HttpRequest 要500毫秒 而Chrome 只需要 39ms。

?

后來 整理 各種方法做了優化?

?

HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;
request.KeepAlive = false;
request.ServicePoint.Expect100Continue = false;request.ServicePoint.UseNagleAlgorithm = false;
request.ServicePoint.ConnectionLimit = 65500;
request.AllowWriteStreamBuffering = false; 
request.Proxy = null;
response.Close();
request.Abort();

?

打開 KeepAlive 屬性,這個可以打開一個tcp連接并在 一段時內重用tcp連接,從而加快http 請求。(默認是打開的)(我在開啟keepalive 時出現 服務器關閉連接的錯誤,在請求完成后 加response.Close();request.Abort(); 后 錯誤消失)
Expect100Continue ?的作用

發送一個請求, 包含一個Expect:100-continue, 詢問Server使用愿意接受數據
接收到Server返回的100-continue應答以后, 才把數據POST給Server
所以關閉它可以加快http 請求。
還有?ConnectionLimit 默認是2 ,就是說 系統 只能 并發 2個http 請求,所以 這個屬性可以以適當增大。


Proxy 屬性在 .Net 4.0 時應該在 config 文件中增加:

?

<system.net>
<defaultProxy
enabled="false"
useDefaultCredentials="false" >
<proxy/>
<bypasslist/>
<module/>
</defaultProxy>
</system.net>
</configuration>

?

其他版本.NET 可以設置為null。
原因:NET4.0或3.5中的默認代理是開啟的,而我并沒有設置!故只有等待超時后才會繞過代理,這就阻塞了.其他的可以自己百度。到這了 http 的響應速度由原來 的500ms 減小的60ms,但還是 比不上Chrome。

轉載于:https://www.cnblogs.com/sharing1986687846/p/10266254.html

總結

以上是生活随笔為你收集整理的C# http 性能优化500毫秒到 60 毫秒的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。