我将不胜感激关于工具和实践,我可以用来确认我最近完成的网站正确执行的任何意见。
虽然我相信代码不会产生错误,并且在function上应该像它应该那样运行,但是我对如何识别IIS,sql Server和Windows性能/并发性问题却一无所知。 例如,如果这个网站被一大堆stream量短暂击中,我怎么会意识到这个事件曾经发生过,我怎么知道这个网站是否应付了这个事情。
该网站是使用运行在Windows 2003 R2标准版,sql Server 2005工作组版和IIS 6上的ASP.NET 2.0和C#编写的。
Windows Azure设置演练(最好是虚拟指导)?
ASP.NET:你最常用的httpmodules
Windows Azure VM网站设置
如何解决“上传到asp.net IIS服务器时不支持”MessageEncoder内容typesparsing“错误?
Web API 2 POST请求不在单声道上工作
Windowssearchsql:LIKE语句中的分号导致exception(E_FAIL 0x80004005)
Windows Azure – 无法创buildangular色入口点
将单声道移植到.Net
在Windows Azure中部署Unity3D
考虑使用也引发警报的日志记录机制,因此当数据库调用时间过长,表明服务器负载过高时,日志记录器会发出警告。 检查log4net 。
关于工具和做法,我推荐badboy和jmeter作为负载测试您的网站的工具。 Badboy很简单,可以生成也可以在Jmeter中使用的网址。 后者做了很好的工作负载测试您的网站。 执行长时间运行的测试,并使用不同的硬件设置来查看添加更多Web /应用程序服务器如何影响性能。
另外,请查看PerfMon ,这个工具可以让您监视本地或远程Windows服务器的竞争率,cpu负载等等。
您可以使用负载生成工具(如WebLoad)来捕获然后重播(通过脚本进行可能的变化)用户与您的应用程序的用户界面进行大量线程和连接的交互。
如前所述,负载生成工具是相当有帮助的。 您可以为数据库端添加的一件事是使用sql跟踪。 用非常具体的步骤设置一个测试计划,当您逐步执行计划时,跟踪服务器上运行的sql。
这样,您可以确定某些操作是否导致不必要/重复的数据库调用。 此外,您可能会发现运行非常简单的操作的非常大型的非高性能查询。
对于sql server,使用sys.dm_exec_requests DMV并检查cpu使用情况,读取,写入,阻止等
select blocking_session_id,wait_type,* from sys.dm_exec_requests
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。