博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.Net Performance[译]
阅读量:5999 次
发布时间:2019-06-20

本文共 1426 字,大约阅读时间需要 4 分钟。

英文版 .Net Performance 作者 Sasha Goldshtein,Dima Zurbalev,Ido Flatow

目录

前言

关于作者
关于审计员
鸣谢
本书介绍

第一章:性能评定标准第二章:性能测试方法第三章:内部类型第四章:垃圾回收第五章:集合和泛型第六章:并发和并行第七章:网络、I/O和序列化第八章:不安全代码(unsafe code)和互通性第九章:算法优化第十章:性能模式第十一章:Web Application 性能

附录


本书介绍

写本书的原因是我们感觉到目前没有相对权威的文字,能够覆盖到与.Net Application 性能相关到三个方面:

  • 确定应用程序的性能标准,然后测量应用程序是否符合该标准。
  • 在一些领域里面提升程序性能:内存管理、网络、I/O、并发等。
  • 充分理解CLR和.Net 内部细节,设计和开发高性能的应用程序,解决因性能引起的问题。

我们相信,如果软件开发者不能很好的理解这三个方面,那么就不能有很好的高性能的软件解决方案。例如.Net内存管理(由CLR垃圾收集器(GC)推进工作)是一个极其复杂的领域,并且会引起巨大的性能问题如:内存泄露和GC长时间暂停。如果不理解垃圾收集器(GC)的工作原理,那么高性能的内存管理就无从谈起了。类似的,在决定使用.Net已经提供的集合类还是自己实现一个集合类的时候,开发者也需要全面的了解CPU缓存机制,运行时以及同步问题。

本书的11个章节,读者既可以连续阅读,也可以来回跳跃,在需要时反复阅读以巩固。具体的章节简介如下:

  • 第一章和第二章涉及性能指标和性能测量方法,并且介绍一些可用的性能测试工具。
  • 第三章和第四章深入到CLR内部,专注于内部类型和CLR垃圾收集器的实现,这是跟内存管理有关的两个重要的课题,从而提升程序性能。
  • 第五、六、七、八章和第十一章探讨了在CLR和.Net framework的一些具体的可能提升性能的地方,例如正确的使用集合,平行化顺序代码,优化I/O和网络操作,有效地使用互操作性解决方案和提高
    Web应用程序的性能。
  • 第九章简短的介绍了算法和算法的复杂性理论,培养你优化算法的感觉。
  • 第十章把其他一些比较杂的主题,不适合归入以上章节的内容一股脑的写出来,包括启动时间优化,异常和.NET反射。

为了更好的理解以上内容,你可能需要有一些基础,如C#和.Net framework的开发经验。一些基础概念:

  • Windows:线程,同步,虚拟内存
  • 通用语言运行时(CLR):即时(JIT)编译器,Microsoft中级 语言(MSIL),垃圾收集器
  • 计算机组织:主内存,缓存,磁盘,显卡,网络接口

在本书中有不少的示例程序、摘录、测试数据等。为了不使本书变的冗长,我们一般只包含了主要部分,但是你可以在网站上找到所有源代码。

在某些章节中,为了说明CLR是如何工作,更全面具体的解释性能优化,本书还使用了X86汇编语言代码。尽管这些内容并不是本书的重点,但是仍希望读者们可以投入一点时间去学习汇编语言的基础知识。推荐一本免费的书籍(

总结来说,本书内容包含:性能测试工具,在小范围内提高性能的小提示和技巧,许多CLR机制的理论基础,示例代码以及作者的经验案例。

近十年来,我们一直在为客户优化程序,从无到有设计高性能系统。在最近几年,我们训练了大量的开发者,在软件开发周期的各个阶段考虑性能问题并积极优化程序性能。

你即将加入他们。

转载地址:http://ihzmx.baihongyu.com/

你可能感兴趣的文章
CF:3D City Model(小思维)
查看>>
vim讲解
查看>>
如何解决TestNG Retry的问题
查看>>
三行代码搞定微信登录集成
查看>>
Android Studio 快捷键
查看>>
python+requests做接口测试
查看>>
iphone开发 如何在NSMutableDictionary中放入基本数据类型
查看>>
VMware中安装系统提示没有可用的映像(No image available)
查看>>
css标签选择器
查看>>
Servlet中文件上传
查看>>
打包并下载文件
查看>>
为什么Android要采用Binder作为IPC机制?
查看>>
js数组操作
查看>>
JavaWeb学习 (八)————HttpServletResponse对象(二)
查看>>
nginx 配置文件备份
查看>>
机器学习工作流程从数据清洗到模型调优
查看>>
php 多维数据根据某个或多个字段排序
查看>>
日期正则匹配 PHP超级强悍
查看>>
$.extend()浅拷贝深拷贝
查看>>
git配置
查看>>