我们在IIS7上有一个ASP.Net 3.5应用程序。
在我们的预览服务器上,它几乎可以即时获取和响应(从显示页面到1秒)。
我们有一个有5个Web前端和3个sql数据库集群的生产环境。
字体结尾是负载平衡Big5从循环赛f5。
前端和sql服务器之间有一个防火墙。
在生产中,我们在服务器启动响应之前正在经历45秒的获取。 根据上面的信息,罪魁祸首是什么?
先进的谢谢你。
你提到的任何组件都可能是问题的原因。
解决此问题的最佳方法是嗅探客户端,IIS服务器和SQL服务器上的入站和出站接口。 一旦logging了您的请求及其后续响应在45秒窗口期间的logging,您应该毫无困难地确定问题的根源。
我同意@Rich,问题可能在任何地方。 具体来说,为你的dotNet应用程序使用一个日志库,并检查你的IIS日志,并在你的数据库服务器上使用SQL Server Profiler。
唯一的复杂性是集群,所以你只能看到1/5的networkingstream量和1/3的数据库stream量。 如果每个请求都是45秒慢,那么我想跟踪任何请求会告诉你这个问题。 否则,请打开粘性会话,以便始终在整个testing会话中使用相同的服务器。
当然,我们假设你已经检查了基本的东西 – 你的服务器不是缺乏资源,对吧? (即:CPU没有最大化,仍然有可用的RAM,页面文件没有最大。)
此外,如果您要重新检查基本,请确保您确认所有联网设备都具有正确的速度和双工设置。 令人惊奇的是,一个接口被设置为半双工的单个服务器将会破坏一个function正常的应用程序。
你有监视的F5设置? 如果启用默认监视,则每隔5秒检查一次,并在12之后将服务器标记为脱机状态 – 因此,您将知道问题出在F5和Web服务器之间。 如果您没有进行基本的监控,您可能需要考虑进行设置,以便F5可以对节点做出明智的决定