IIS 7.5 下部署 .net 2.0 Webservice 访问DB2数据库,大并发下报错

菜刀李 2018-04-27 01:12:42
最近被这个问题困扰的焦头烂额,测试了很多天都没处理掉

VS2010开发的.net 2.0 ASP.net WebService 部署在Server 2003 下的IIS6上,客户端用.net 2.0 WinForm 添加的Web引用调用该WebService
其中的两个方法如下:
[WebMethod]
public DataSet GetDataSet(String SQLStr)
{

using (OleDbConnection oledbcon = new OleDbConnection())
{

oledbcon.ConnectionString = " XX";//连接的是 DB2 V8.1
oledbcon.Open();

using (OleDbDataAdapter ad = new OleDbDataAdapter(SQLStr, oledbcon))
{
ad.SelectCommand.CommandTimeout = 120;

using (DataSet ds = new DataSet())
{
ad.Fill(ds, "table");
return ds;
}
}
}
}
[WebMethod]
public String GetServerTime()
{
return System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}

这个程序运行3年多了一直很稳定,每天100多个用户,用XP访问时速度比较快,但是使用Win7 64访问的时候很卡顿。即使访问GetServerTime这个方法也很卡,延迟5秒以上。只能从Win7客户端计算机上运行
netsh int tcp set global autotuninglevel=disable这个命令,重启后,每次访问速度都和XP下一样快了,这两三年都是这么处理的,不过有些麻烦,需要让客户端设置一下,所以决定把WebService迁移到Server 2008的IIS7.5下,迁移后,Win7直接访问果然快了,XP也一样快,问题似乎解决了,但是,更莫名起名的问题又发生了:
1、用户少的时候,程序是正常运行的,不报错
2、用户多的时候,应用程序池自动停止,事件查看器的错误信息如下:为应用程序池“VsWebServices”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误。该进程 ID 为“8044”。数据字段包含错误号。
于是又做了些其它测试,比如只访问GetServerTime();不报错,运行稳定

问题就出在DataSet GetDataSet(String SQLStr) 访问数据库的方法上,又做了很多实验来测试这个方法,比如,把这个方法的代码独立出来,编了一个WinForm程序,直接访问数据库,不通过Web引用,压力测试后,不报错,运行稳定。数据库驱动看来没有问题。
所以把WebService里GetDataSet方法改为连接SQLServer,压力测试后,运行稳定,看来方法本身没毛病
但是只要把访问DB2的这个方法部署在IIS7.5下,多开几个客户端,同时操作,立马报错,真是奇怪。


...全文
639 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
菜刀李 2018-05-15
  • 打赏
  • 举报
回复
结贴吧,虽然没又找到答案,回者有分
菜刀李 2018-04-28
  • 打赏
  • 举报
回复
发帖前我已经测试过了,没有效果。
天空收拾者 2018-04-27
  • 打赏
  • 举报
回复
http://blog.sina.com.cn/s/blog_75d63f000101gnex.html
天空收拾者 2018-04-27
  • 打赏
  • 举报
回复
http://www.cnblogs.com/freeton/archive/2012/08/28/2660585.html
菜刀李 2018-04-27
  • 打赏
  • 举报
回复
为应用程序池“VsWebServices”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误。该进程 ID 为“8044”。数据字段包含错误号 我查了很多资料,包括分析Dump文件,不过按照网上的设置,根本没有生成dump文件。

12,163

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧