1. <blockquote id="jx7dd"><ruby id="jx7dd"></ruby></blockquote>

      <code id="jx7dd"><strong id="jx7dd"></strong></code>

      <blockquote id="jx7dd"><ruby id="jx7dd"><rp id="jx7dd"></rp></ruby></blockquote>
    2. <blockquote id="jx7dd"></blockquote>
      <thead id="jx7dd"></thead>
      <listing id="jx7dd"><strong id="jx7dd"></strong></listing>
    3. <td id="jx7dd"><menuitem id="jx7dd"></menuitem></td>
      • 软件开发精英班
      • Java企业订制班
      • UI设计零基础班
      • Java精英就业班
      • Web前端开发精英班
      • 3-27
      • 3-27
      • 3-27
      • 4-03
      • 3-25
      bangchu_4008868558

      全国免费咨询电话

      400-8868-558
      bangchu_4008868558
      QQ在线咨询
      bangchu_4008868558 bangchu_4008868558
      bangchu_4008868558
      bangchu_4008868558
      bangchu_4008868558
      客服不在时,
      请发送短信"姓名+课程+需了解的问题”
      至15980830540我们将第一时间与您取得联系

           在本文中,厦门邦初将介绍8项提高 ASP.NET Web API 性能的?#38469;酢?/p>

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

          JSON 的序列化对整个 ASP.NET Web API 的性能有着关键性的影响。 在邦初的一个项目里,从 JSON.NET 序列化工具转到了 ServiceStack.Text 有一年半了。

          厦门邦初?#38469;?#20013;心测量过,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这?#20013;?#35758;格式。你将能给获取到巨大的性能优势,不仅是因为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.(邦初?#38469;?#20013;心 )

      温馨提示

      • > 如果你不懂电脑,还在苦苦自学电脑知识,却不见成效;
      • > 如果你大专本科毕业后仍找不到好的工作,还是不停的换着工作,收入朝不保夕;
      • > 如果你是应往届高中生且对学历教育不"来电",不想白白浪费几年时间在"非主流"的大中专学校;
      • > 如果你在软件行业呆了三五年,仍然是一个菜鸟,工资停滞不前;
      • > 也许你有想通过自己的努力学习,改变自己的境遇,那么请不要再瞎想了,请在这里多停留几?#31181;影桑?#25226;你所有的疑惑迷 茫写下来,把问题交给厦门邦初,我们会?#22995;?#23545;性的给你回复,希望我们的小小建议,能够为你拨云见日;

      厦门邦初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至软件园西门站


      © 2019 厦门邦初软件教育

      河北十一选五任六
      1. <blockquote id="jx7dd"><ruby id="jx7dd"></ruby></blockquote>

        <code id="jx7dd"><strong id="jx7dd"></strong></code>

        <blockquote id="jx7dd"><ruby id="jx7dd"><rp id="jx7dd"></rp></ruby></blockquote>
      2. <blockquote id="jx7dd"></blockquote>
        <thead id="jx7dd"></thead>
        <listing id="jx7dd"><strong id="jx7dd"></strong></listing>
      3. <td id="jx7dd"><menuitem id="jx7dd"></menuitem></td>
        1. <blockquote id="jx7dd"><ruby id="jx7dd"></ruby></blockquote>

          <code id="jx7dd"><strong id="jx7dd"></strong></code>

          <blockquote id="jx7dd"><ruby id="jx7dd"><rp id="jx7dd"></rp></ruby></blockquote>
        2. <blockquote id="jx7dd"></blockquote>
          <thead id="jx7dd"></thead>
          <listing id="jx7dd"><strong id="jx7dd"></strong></listing>
        3. <td id="jx7dd"><menuitem id="jx7dd"></menuitem></td>