今天碰到了一个问题,asp.net应用中双机的一台间歇性的出现cpu占用率100%的情况,而另外一台基本稳定在50%以下较为稳定,初步的跟其他工程师沟通,程序中没有复杂的算法和很深的循环等。
下面记录下简单的分析过程:
1、应用做了基于F5负载均衡,另外一台cpu占用比较低而且稳定证明并发并不是很高。
2、在并发不高,没有复杂算法的前提下,初步断定不是gc时产生的压力,而且cpu占用率较高时应用访问并没有较为明显的停顿。
3、同时监控web的cpu,db的cpu和网络访问性能,发现cpu较高时DB的压力并不大,基本稳定在50%左右,但是较高的给CPU峰值过后,会出现网络的流量的峰值,在并发不大的情况下,可以推断此时用户在进行附件的操作,如上传图片和等。经过沟通发现程序中提高了图片的打包下载功能,那么cpu的峰值出现在打包的zip调用之中,而且频繁的打包操作的那几个用户正好被F5分配到了100%的那台机器上。经过一段时间的观察用户打包下载高峰过后cpu回归正常。
简单的总结,在性能分析的过程中并没有运用什么复杂的工具,一步步分析和推理,发现问题其实很简单。
相关推荐
ASP.NET性能优化是Web开发领域中的一个重要话题,尤其对于构建大型、高访问量的网站而言,性能优化至关重要。本文将深入探讨ASP.NET平台下的一些关键性能优化策略和技术,旨在帮助开发者提升网站的响应速度和处理...
综上所述,ASP.NET性能优化是一个多方面的过程,涉及数据库操作、数据访问策略、数据绑定效率以及服务器和代码层面的优化。开发者应根据具体应用需求和性能瓶颈,针对性地实施这些优化措施,以提升应用程序的性能和...
ASP.NET性能优化最佳实践是软件开发中的重要环节,尤其是在构建大型、高性能的Web应用程序时,这一环节显得尤为关键。ASP.NET作为一个强大的Web开发框架,提供了许多内置功能来帮助开发者优化应用性能。以下是一些...
根据经验的总结,让我们来看看十个能帮助你提升你的应用程序性能的经验,我将按将它们提升效率的多少从大到小小依次说明,一、返回多个数据集,二、对数据进行分页,三、连接池 ,四、 ASP.NET缓存API ,五、 预请求缓存,...
到目前为止,我们讨论了把缓存存放在ASP.NET的输出缓存中(内存和硬盘),以及浏览器缓存中,而大型站点的另一种常用做法是将缓存部署在反向代理服务器上,这类缓存我们通常称之为反向代理缓存,比如Squid和Varnish...
【ado.net性能优化】 在开发ASP.NET应用时,性能优化是一项关键任务,特别是涉及到数据库交互时。ADO.NET作为.NET框架中的重要组件,负责处理数据库连接和数据操作,对其进行优化能够显著提升网站的运行效率。以下...
ASP.NET的输出缓存(即静态HTML)在.NET4.0前一直是基于内存的。这意味着如果我们的站点含有大量的缓存,则很容易消耗掉本机内存。现在,借助于.NET4.0中的OutputCacheProvider,我们可以有多种选择创建自己的缓存。...
"ASP.NET性能优化及其安全性探讨" 在ASP.NET中,性能优化和安全性是两个紧密相关的概念。性能优化是指如何将Web应用程序运行得越来越快,而安全性则是指如何保护Web应用程序免受恶意攻击和数据泄露的影响。在本文中...
总的来说,《ASP.NET性能高级编程》是一本全面覆盖ASP.NET性能优化各个方面的书籍,无论你是ASP.NET 1.1还是2.0的开发者,都可以从中获得宝贵的性能提升经验,为你的Web应用构建一个更强大、更稳定的运行环境。...
ASP.NET应用程序性能优化是开发高效、流畅Web应用的关键环节,特别是在使用Visual Studio 2005这样的强大开发工具时。本主题将深入探讨如何通过多种策略提升ASP.NET应用的性能,确保用户获得最佳的在线体验。 首先...
### 提高ASP.Net性能的关键策略 在现代网络应用开发中,ASP.Net作为一款广泛使用的框架,其性能优化是确保应用程序高效、稳定运行的关键。本文将深入探讨如何通过十大方法来提高ASP.Net应用程序的性能,旨在为...
在本教程中,我们将深入探讨ASP.NET性能优化的关键技术和策略。 首先,我们需要理解ASP.NET的工作原理。ASP.NET是一种基于.NET Framework的服务器端Web应用程序框架,它提供了丰富的功能和工具来创建动态网页。在...
ASP.NET优化技巧主要聚焦于提升ASP.NET应用...综上所述,ASP.NET性能优化是一个综合性的过程,涉及到设计、编码、测试、部署等多个环节。开发者需要对每个环节都保持敏感,以便在开发过程中尽早发现并解决性能问题。
9. **性能优化**:掌握ASP.NET性能优化技巧,如缓存策略、页面压缩和减少数据库查询等。 10. **调试与日志记录**:学习使用Visual Studio进行调试,以及如何设置和分析应用程序日志,以便于问题定位和修复。 11. *...
7. **源代码分析**:书中包含的实例代码可以帮助读者理解和应用书中的理论知识,通过实际操作加深对ASP.NET性能优化和可扩展性的理解。 8. **持续集成与自动化测试**:介绍如何设置持续集成环境,进行单元测试和...
6. **部署和硬件优化**:合理的服务器配置,包括内存、CPU和磁盘I/O,以及负载均衡和集群技术的应用,也是提升ASP.NET性能的重要手段。 然后,我们不能忽视**Oracle优化**。Oracle是广泛使用的数据库系统,其性能...