Introduction(本书简介)
本书简介
本书将从三个方面权威的阐述如何提高.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机制的基础理论以及作者多年工作经验的见解和一些研究案例,近十年来我们一直在帮助客户设计高性能的应用程序解决方案,我们有数百人的团队在不断的思考如何提高应用程序的性能贯穿于软件开发生命周期的各个阶段,您读完此书,您将加入到研究提高应用程序性能研究人员的行列之中。
信仰赋予了我们一种强大的使命感,使我们执着的前进。