• 軟件開發精英班
  • Java企業訂制班
  • UI設計零基礎班
  • Java精英就業班
  • Web前端開發精英班
  • 7-10
  • 7-10
  • 7-10
  • 7-17
  • 7-15
bangchu_4008868558

全國免費咨詢電話

400-8868-558
bangchu_4008868558
QQ在線咨詢
bangchu_4008868558 bangchu_4008868558
bangchu_4008868558
bangchu_4008868558
bangchu_4008868558
客服不在時,
請發送短信"姓名+課程+需了解的問題”
至15980830540我們將第一時間與您取得聯系

开火车水果老虎机 www.kdtwv.icu      在本文中,廈門邦初將介紹8項提高 ASP.NET Web API 性能的技術。

1) 使用最快的 JSON 序列化工具

    JSON 的序列化對整個 ASP.NET Web API 的性能有著關鍵性的影響。 在邦初的一個項目里,從 JSON.NET 序列化工具轉到了 ServiceStack.Text 有一年半了。

    廈門邦初技術中心測量過,Web API 的性能提升了20%左右。 廈門邦初建議你去嘗試一下這個序列化工具。這里有一些最近的流行序列化工具性能的比較數據。

    更新: 似乎StackOverflow 使用了他們號稱迄今為止最快的 JSON 序列化工具 Jil。 一測試數據可參見他們的GitHub page Jil serializer.

2)從DataReader中手動串行化JSON

    廈門邦初已經在邦初的項目中使用過這種方法,并獲得了在性能上的福利。

    你可以手動地從DataReader創建JSON字符串并避免不必要的對象創建,這樣你就不用從DataReader中取值并寫入對象,再從這些對象中取值并使用JSON Serializer產生JSON.

使用StringBuilder產生JSON,并在結尾處返回StringContent作為在WebAPI中響應的內容。

1. var response = Request.CreateResponse(HttpStatusCode.OK);  

2. response.Content = new StringContent(jsonResult, Encoding.UTF8, "application/json");  

3. return response; 

3)盡可能使用其它協議格式 (protocol buffer, message pack)

    如果你能給在你的工程中使用其它消息格式,如 Protocol Buffers 或MessagePack   而不是使用JSON這種協議格式。你將能給獲取到巨大的性能優勢,不僅是因為Protocol Buffers 的序列化是非???而且比JSON在返回的結果格式化要更快。

4) 實現壓縮

    在你的ASP.NET Web API中使用GZIP 或 Deflate 。對于減少響應包的大小和響應速度,壓縮是一種簡單而有效的方式。.

5) 使用caching

    在Web API方法中使用output caching意義深遠.舉例來說,如果大量用戶訪問同一個一天只改變一次的響應(response)內容。

6) 盡可能地使用典型的 ADO.NET

    手動編寫的ADO.NET仍然是從數據庫中取值的最快捷的方式。如果Web API的性能對你來說真的很重要,那么就不要使用ORMs.(邦初技術中心 )

溫馨提示

  • > 如果你不懂電腦,還在苦苦自學電腦知識,卻不見成效;
  • > 如果你大專本科畢業后仍找不到好的工作,還是不停的換著工作,收入朝不保夕;
  • > 如果你是應往屆高中生且對學歷教育不"來電",不想白白浪費幾年時間在"非主流"的大中專學校;
  • > 如果你在軟件行業呆了三五年,仍然是一個菜鳥,工資停滯不前;
  • > 也許你有想通過自己的努力學習,改變自己的境遇,那么請不要再瞎想了,請在這里多停留幾分鐘吧,把你所有的疑惑迷 茫寫下來,把問題交給廈門邦初,我們會有針對性的給你回復,希望我們的小小建議,能夠為你撥云見日;

廈門邦初QQ咨詢 廈門邦初在線咨詢 廈門邦初網上報名

全國免費咨詢電話 : 400-8868-558
報名電話 : 0592-2617998  2617999
地址 : 廈門市軟件園二期望海路65號一樓
備案信息 : 閩ICP備09025137號
乘L27、28、29、47、55、92、94、98、127至軟件園站
38、39、88、948、949、128、751、752至軟件園東門站
18、102、105、129、653、656、754至軟件園西門站