本书简介

本书将从三个方面权威的阐述如何提高.net app 性能问题:

  • 验证、测量性能指标,然后辨别它是否超过度量
  • 从内存管理、网络、I/O、并发等方面提高应用程序的性能
  • 通过CLR的详细的设计细节来解决应用程序的性能瓶颈

我们相信.net软件开发人员无法实现高性能的软件解决方案是因为上述三个领域的问题,例如,。内存管理(通过CLR垃圾收集器)是一个非常复杂的领域和重大性能问题的原因,包括内存泄漏和GC暂停时间长,不了解CLR垃圾收集器运行,高性能内存管理等。同样的,选择恰当的集合类型,如是框架提供还是自己实现等都能提高性能,当然,当您选择自己实现的时候,您需要熟悉CPU缓存,运行时的复杂性以及同步问题。

本书您可以连续阅读,当然,您也可以来回跳跃的阅读(这不是废话么??)

  • 第1章和第2章处理性能指标和性能测量,介绍了工具来测量应用程序的性能。
  • 第3章和第4章深入探究CLR类型设计和垃圾回收等改善应用程序性能至关重要的问题
  • 第6-8章、11章 介绍了如何正确的使用和优化集合、并行编码、优化网络、I/O  等有效的提高web 应用程序性能
  • 第9章简要进军复杂性理论和算法。
  • 第10章主要介绍 启动时间优化、异常处理以及反射。

阅读本书之前,我们假定您掌握了以下知识:

  • windows线程同步和虚拟内存知识
  • 公共语言运行库(CLR):即时(JIT)编译器,微软中间语言(MSIL),垃圾收集器(GC)
  • 计算机组织:主内存、缓存、磁盘、图形卡、网络接口

您可以通过本书的官方网站下载包括但不限于本书的示例代码。

在一些章节中我们使用x86汇编语言代码来说明操作或CLR机制,更彻底地解释一个特定的性能优化,尽管这些不是这本书的关键所在。我们推荐专用读者投入一些时间在学习x86汇编的基本原理语言。兰德尔·海德的免费书“汇编语言编程的艺术”(http://www.artofasm.com/Windows/index.html)是一个很好的资源。

本书有包含了很多应用程序性能测量的小工具和技巧、CLR机制的基础理论以及作者多年工作经验的见解和一些研究案例,近十年来我们一直在帮助客户设计高性能的应用程序解决方案,我们有数百人的团队在不断的思考如何提高应用程序的性能贯穿于软件开发生命周期的各个阶段,您读完此书,您将加入到研究提高应用程序性能研究人员的行列之中。

  

  

Introduction(本书简介)的更多相关文章

  1. Spring AOP之Introduction(@DeclareParents)简介

    Spring的文档上对Introduction这个概念和相关的注解@DeclareParents作了如下介绍: Introductions (known as inter-type declarati ...

  2. Spring AOP之Introduction(@DeclareParents)简介(转)

    Spring的文档上对Introduction这个概念和相关的注解@DeclareParents作了如下介绍: Introductions (known as inter-type declarati ...

  3. KnockoutJS 3.X API 第一章 简介

    本文纯正翻译自官网API文档.其中包含一下个人理解. 官网API地址:http://knockoutjs.com/documentation/introduction.html 简介 Knockout ...

  4. 快速上手RaphaelJS-Instant RaphaelJS Starter翻译(一)

       (目前发现一些文章被盗用的情况,我们将在每篇文章前面添加原文地址,本文源地址:http://www.cnblogs.com/idealer3d/p/Instant_RaphaelJS_Start ...

  5. iOS CoreAnimate 动画实现

    这里主要讲的是使用CoreAnimate实现所需的动画. 先上官网的介绍:https://developer.apple.com/library/ios/documentation/Cocoa/Con ...

  6. Flume官方文档翻译——Flume 1.7.0 User Guide (unreleased version)(一)

    Flume 1.7.0 User Guide Introduction(简介) Overview(综述) System Requirements(系统需求) Architecture(架构) Data ...

  7. Hadoop官方文档翻译—— YARN ResourceManager High Availability 2.7.3

    ResourceManager High Availability (RM高可用) Introduction(简介) Architecture(架构) RM Failover(RM 故障切换) Rec ...

  8. Hadoop官方文档翻译——HDFS Architecture 2.7.3

    HDFS Architecture HDFS Architecture(HDFS 架构) Introduction(简介) Assumptions and Goals(假设和目标) Hardware ...

  9. ajax 如何做到 SEO 友好

    我猜你是在网络上搜索“ajax如何被搜索引擎收录”.“ajax SEO”.“ajax SEO友好”等关键词来到这里的.你可能已经很疲惫了,因为前段时间我也这样搜索,但是我发现搜索到的内容质量不高,有的 ...

随机推荐

  1. SpringBoot 启动定时任务

    再项目中大多会使用定时任务来定时执行一些操作,如:文件迁移,备份等等.今天就来跟大家一起学习下如何在SpringBoot中创建定时任务. 1.新建SpringBoot项目,或在原有的项目上添加(不知道 ...

  2. PCB Winform中的WebBrowser扩展拖放(拖拽)功能 实现方法

    我们在Winform支持网页通常增加WebBrowser控件实现,相当于内嵌浏览器浏览网页使用, 而此WebBrowser默认情况是文件拖入功能是不支持的, 如何才能支持呢.在这里介绍如何实现方法 一 ...

  3. P1462 通往奥格瑞玛的道路(二分答案+最短路)

    P1462 通往奥格瑞玛的道路 题目背景 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士,他是部落的中坚力量 有一天他醒来后发现自己居然到了联盟的主城暴风城 在被众多联盟的士兵攻击后,他决定逃回自己的家乡 ...

  4. robotframework - 运行报错提示 No keyword with name 'Open Browser' found.

    用下面的例子为例: 1.输入以上robot脚本提示: 2.经查阅资料,大部分都使用的是selenium2 版本,无法解该的问题,目前小编使用的是selenium3,不知道selenium是哪个版本的话 ...

  5. layout 自适应详解

    @{    ViewBag.Title = "人员查找";    ViewBag.LeftWidth = "200px";    ViewBag.MiddleW ...

  6. Linux 命令多到记不住?这个开源项目帮你一网打尽!

    本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. 最近发现了一个 ...

  7. Testng1

    Testng 简介: Testng是一套开源测试框架,是从Junit继承而来,testng意为test next generation,主要有以下特性: annotations  注释,如 @test ...

  8. 【洛谷2469/BZOJ1927】[SDOI2010]星际竞速(费用流/最小路径覆盖)

    题目: 洛谷2469 分析: 把题目翻译成人话:给一个带边权的DAG,求一个路径覆盖方案使路径边权总和最小.从点\(i\)开始的路径需要额外加上\(A_i\)的权值. 回xian忆chang一xue下 ...

  9. cocos2d-js 添加广告

    http://www.cocoachina.com/bbs/read.php?tid=225655

  10. Android:用签名打包后微信分享失效

    刚开始使用微信分享,申请的微信appid也可以在直接使用,分享成功! 当我使用自己的签名打包分享时却分享失败,一闪而过,好郁闷的说,为什么之前没有打包就可以,签名打包后就不可以了... 开始查找各种资 ...