我有8个应用程序(VB.NET)我的服务器运行SQL Server 2008 R2。每个应用程序都有一个数据应用程序位于服务器上,数据库位于另一台服务器上。
只是为了让你知道:
服务器数据库平均占CPU使用率的30%,而应用程序服务器平均占CPU使用率的60%。
具有相同配置的2台服务器。基本配置:
我们使用NewRelic 24小时监控系统。而最大的问题是:NewRelic总是指出由" System.Web.HttpApplication.BeginRequest()"引起的放缓。
在第二张图片中,我们可以看到问题是:" 应用程序代码(System.Web.HttpApplication.BeginRequest())"
我在互联网上搜索了很多,发现它可能与#34; sessionState"有关。我使用" StateServer"所有八个申请。 (使用" StateServer"的原因是应用程序会更快。)
关注" sessionState"配置:
<sessionState
cookieless="UseCookies"
cookieName=".authz"
mode="StateServer"
regenerateExpiredSessionId="true"
stateConnectionString="tcpip=127.0.0.1:42424"
timeout="20"
useHostingIdentity="true" />
在任何地方,我将对象放在会话中,我使用&#34; Serializable()&#34;。例如:
<Serializable()> Public Class Example
无论如何,我想向你们解释一下情况。我能做些什么来加快速度并解决这个问题?谢谢
答案 0 :(得分:0)
您似乎找到了与thread agility and session state相关的信息,因此我们可以跳过这一点。如果您认为缺少的信息可以使用Custom Transactions和Custom Instrumentation来帮助代理查看可能缺少的方法。
即使在进行自定义检测时,持续时间也不会改变。