【推荐序】
1999年,Windows 98只有1800万行代码,运行环境只需要16MB内存、225MB硬盘。而目前最新的Windows 10有6000万行代码,需要8GB内存、20GB硬盘才能流畅地运行。
1990年,低速的CAN总线才125kb/s,高速的500kb/s吞吐的CAN总线就能满足整车通信需要,而且还有剩余。之后,CA总线升级到2.0,最高也才8MB的吞吐。而今天100MB以上的以太网通信及其高速CA总线3.0已经成为电动汽车电子的标配。
所有软件系统都在急剧复杂化,所有软件的基础运行环境都在急剧膨胀。
在这种情况下,在复杂环境下进行软件可靠性测试,分析软件缺陷,快速定位和解决软件缺陷,是保持产品市场竞争力的核心能力。尤其对正在数字化、信息化转型的传统企业而言,他们既要保证支撑传统业务的老系统的连续性,又要保证在叠床架屋的传统IT架构中更快更好更巧妙地进行变革。这种变革往往牵一发而动全身,如何革而不毁,如何在保证质量和业务连续性的前提下不断迭代,软件测试就是我们制胜的法宝。
百年福特,长盛不衰,对产品质量的重视是其中的秘诀之一。福特中国一贯把软件质量和稳定性放在第一位,把发展自己的测试团队放在组织进化的重要位置,本书作者张永清就是这样一位福特中国软件团队优秀的软件专家。
张永清的这本书,融合了研发和测试,融合了后端和前端,融合了应用和数据库,融合了性能定位的方法论和实践,全面介绍了如何进行性能分析定位调优,如何让软件系统拥有更快的性能体验,这些是他在很多年测试、研发、架构岗位上经验积累的输出。由于本书涉及的知识面很广,因此本书的内容不仅适合性能测试工程师,也适合应用开发工程师、系统分析工程师以及其他岗位的IT工程师。
本书最大的特点就是非常全面地剖析了性能调优的技术和方法,并且结合了大量真实的性能压测案例,让读者能把学习到的理论知识运用到实际的案例中去做实践分析。通过实践,读者不仅可以加深对理论的理解,还可以积累到更多真实的调优经验。
我们希望本书能作为一个引子,一头串起作者本人坚实的软件专业技能,另一头给未来中国软件工程服务器托管网和软件测试技术继续添砖加瓦,持续发光发热,通过技术服务于社会、服务于大众。
“书山有路勤为径,学海无涯苦作舟”。真诚希望每一位接触本书的读者能够认真阅读书中朴实无华的文字和案例,把书中的知识变成自己的积累,再通过实践进行输出。相信本书一定能让每位读过此书的读者走向更好的未来。
黄纪南
福特中国企业技术高级总监
前 言
在经历了传统互联网时代和移动互联网时代之后,我们又迎来了大数据时代和人工智能(AI)时代。但是,不管哪个IT时代,软件的性能始终是用户体验的一个重要环节。如目前最火热的AI应用ChatGPT, 如果没有一个很快的性能,那么它在和人类对话时,就会显得很迟钝,其性能和稳定性直接决定了ChatGPT 能否从容地服务于全球17亿以上的用户访问。
本书升级说明
随着软件技术的发展和更新换代,软件系统越来越复杂,人工智能模型也越来越大,与之对应的是性能要求越来越高,系统稳定要求更加突出。正是在这样的背景和需求下,同时也在本书前一版《软件性能测试、分析与调优实践之路》大量读者的反馈和建议下,迎来了这本书的第2版。
本书在第1版的基础上,针对读者的建议做了很多修改和补充,主要包括:
对第1章的性能调优技术和思想进行细化和补充完善。
在第4章的应用中间件的性能分析与调优中补充了Spring Boot的性能调优。
在第6章的MySQL数据库性能分析中增加了性能定位和调优实践。
在第7章的性能测试、分析与调优案例实践中补充了更多的实践案例和笔者多年的经验总结。
增加第9章前端性能分析。
升级本书中用到的相关软件版本,以及对第1版中的部分错误进行修正和完善。
本书适合的读者
本书面向软件研发和测试岗的读者,理论和实践相结合,详细讲解软件性能分析、诊断和调优实践。本书的内容更侧重于如何去发现性能问题、分析诊断性能问题,以及对发现的性能问题进行调优。升级之后的第2版更加贴近当前软件测试技术的更新换代,笔者坚信读完本书的读者,肯定不会再为“性能问题”而发愁。
鸣谢
学习和交流是一个持久的过程,我们需要不断地去适应这个高速发展的技术时代,软件技术永远在不断地变革,软件性能也会越来越快。从本书第1版的读者反馈情况来看,读者已经建立对本书的长期信任,所以这本书未来也会顺应技术服务器托管网的发展持续更新下去。
感谢读者对第1版的支持和建议,正是因为有了大家的支持和建议,才有了这本书的第2版。也感谢读者指出了第1版中很多的不足之处,才让笔者有了更大的写作动力。
特别感谢清华大学出版社夏毓彦编辑一直对我的支持和鼓励,特别感谢蒋彪等众多挚友在我最困难的时候给于很多的帮助,特别感谢福特中国企业技术高级总监黄纪南为本书写推荐序,特别感谢部门领导周扬对我的鼓励。
由于笔者水平和时间的限制,书中难免会存在一些不足之处,还请读者指正,也恳请读者提出更多宝贵的意见和建议。
笔者,于南京
2024年1月
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
优质博文:IT-BLOG-CN 一、CPU 使用率 CPU使用率是 CPU处理非空闲任务所花费的时间百分比 。例如单核CPU 1s内非空闲态运行时间为0.8s,那么它的CPU使用率就是80%;双核CPU 1s内非空闲态运行时间分别为0.4s和0.6s,那么,总…