当前位置:编程学习 > C#/ASP.NET >>

[向saucer提问]监测站点的性能

公司正在运行的一个bs结构的ERP项目,经历了一批又一批程序员的编写,经常在运行时,报个中莫名其妙的错误,单点压力测试的话也测不出什么问题。

请问有什么工具能对正在运行的站点进行一个全面详细的监测,哪个方法占用内存比较高,哪个变量丢失了?有一个详细的站点监测报表。

请大牛提供一个类似的监测工具,备注:监测正在运行的站点。开发语言:c#。 --------------------编程问答-------------------- 楼主给推荐下 --------------------编程问答-------------------- 这个我也没用个什么软件,反正就是根据问题找,参考
监测IIS性能 --------------------编程问答-------------------- 把错误记录日志就行了。

别指望,“哪个方法占用内存比较高,哪个变量丢失了”记录下来也没用。

而且记录下来的数据量肯定很巨大的,你能看得了? --------------------编程问答-------------------- dotTrace 4 是我常用的性能优化工具。

它可以统计出某个方法、函数运行多少毫秒。 --------------------编程问答-------------------- 关键还是自己去搞清楚自己到底应该检测什么东西。

如果这个稀里糊涂,就好象一个“蒙古大夫”给一个得了绝症的病人做外科手术,不是去提高手艺而却要去责备“如何提高提高柳叶刀的锋利程度”一样,其实也没用。 --------------------编程问答-------------------- “蒙古大夫”的问题出在了外科医学知识,而不是柳叶刀的问题。 --------------------编程问答-------------------- 具体一点,比如说“方法占用内存高、内存变量丢失了”这就是两个诡异的说法。占用内存的是对象,而方法只是占用一点代码空间而已。而程序中可能有几千万个对象,那些出问题的对象都并不是你能一开始就关注的对象(例如因为事件注册的bug而产生的一些无法被GC回收的对象等等)。这些都很难从垃圾堆里翻出来。

最有效的办法还是去搞懂内部机制,然后自动化压力测试。

你说说的“单点压力测试测不出问题”,往往是没有搞懂压力压到具体哪条代码上,没有去有针对性地去测试,而是胡乱地随便测试。有人那些以为随便下载一个网络上的所谓自动测试软件就能测试了,可是下载下来后才发现其实它很简单、其实它的脚本根本不会写、其实根本不知道如何精确地施加压力。测试软件很简单,自己写个程序就能监测你要检测的指标了,关键还是自己写测试程序,这样才能精确地施加压力,这样才能有信心、有勇气去做自动化测试。

但是这需要自己去长期积累编程测试知识。而不是靠从网上下载一个所谓的测试软件就能解决的。 --------------------编程问答-------------------- 各位说的都很好。收益匪浅。

其他大牛什么观点呢? --------------------编程问答-------------------- 有些广泛吧 --------------------编程问答-------------------- "死鬼"已经很久不来了~ --------------------编程问答-------------------- --------------------编程问答-------------------- 可以参考
ASP.NET Performance Monitoring, and When to Alert Administrators
http://msdn.microsoft.com/en-us/library/ms972959.aspx

http://msdn.microsoft.com/en-us/library/ff647787.aspx --------------------编程问答-------------------- --------------------编程问答--------------------
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,