我的系统部署后,运行一切正常,使用频率较高,当频繁使用几天后,会出现以下问题:Server Error in '/' Application. _____ The resource cannot be found. Description: HTTP 404. The resource you are looking for (or one of its
dependencies) could have been removed, had its name changed, or is
temporarily unavailable. Please review the following URL and make sure that
it is spelled correctly. Requested URL: /errorpage.aspx找不到这个页面/errorpage.aspx 属于正常,因为我没有这个文件,问题是因为系统出错了,才会转到这个页面来,我不知道这个问题出在哪里,我重新发布一下,也能恢复到正常,但用不了多久,还会这样,请各位指点,从哪几方面着手排查?
dependencies) could have been removed, had its name changed, or is
temporarily unavailable. Please review the following URL and make sure that
it is spelled correctly. Requested URL: /errorpage.aspx找不到这个页面/errorpage.aspx 属于正常,因为我没有这个文件,问题是因为系统出错了,才会转到这个页面来,我不知道这个问题出在哪里,我重新发布一下,也能恢复到正常,但用不了多久,还会这样,请各位指点,从哪几方面着手排查?
解决方案 »
- 取出Panel里已选择CheckBox的Text,报出未将对象引用到实例
- VS2008 WEB中如何固定GRIDVIEW指定的列,并加分頁功能
- 用户控件中label获得值问题
- 我用sql语句查处一组记录,并且赋给了dataset 但是我还需要重新group by一下,请问如何实现?
- @import能引用用户自定义命名空间么?
- vb.net中使用递归调用是否比循环会提高效率
- Reporting Server 只可以安装在默认站点下吗?
- 如何把数据库中的text字段在asp:textbox中显示
- 一个页有两个datagrid,怎样设置当一个显示的时候,另一个隐藏,另一个显示,第一个隐藏,谢谢!
- 各位帮帮忙----关于源码控制的问题??????????
- ~~~~~~~~~~~XDJM来解~~~~~~~~~~~~~~~~~~~~~~~~~有关定制控件的问题~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- DataReader 问题!
(1)在程序里你的数据库没有及时关闭,导致连接池过满
(2)你的并发量太大,超出IIS允许范围.
从你的这种情况看,1的可能性比较大
(1)在程序里你的数据库没有及时关闭,导致连接池过满
(2)你的并发量太大,超出IIS允许范围.
从你的这种情况看,1的可能性比较大应该是这个问题。
后我再配置文件里把连接池的大小设为2在那个页面上刷新两次就出问题。
dr关闭后正常。
protected SqlConnection Acn;
private SqlCommand loadCommand;
private SqlCommand insertCommand;
private SqlCommand updateCommand;
private SqlCommand deleteCommand;
#region 初始化
public RolesDAL()
{
dsCommand = new SqlDataAdapter();
try
{
Acn = new SqlConnection(ecode.Ferroli.SystemFramework.XMLWebConfiguration.ConnectionString);
Acn.Open();
}
catch(SqlException e)
{
throw e;
}
dsCommand.TableMappings.Add("Table",RolesData.ROLES_TABLE);
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(true);
}
protected virtual void Dispose(bool disposing)
{
if (!disposing)
return;
if (dsCommand != null)
{
if (dsCommand.SelectCommand != null)
{
if (dsCommand.SelectCommand.Connection != null)
dsCommand.SelectCommand.Connection.Dispose();
dsCommand.SelectCommand.Dispose();
}
if (dsCommand.InsertCommand != null)
{
if (dsCommand.InsertCommand.Connection != null)
dsCommand.InsertCommand.Connection.Dispose();
dsCommand.InsertCommand.Dispose();
}
if (dsCommand.UpdateCommand != null)
{
if (dsCommand.UpdateCommand.Connection != null)
dsCommand.UpdateCommand.Connection.Dispose();
dsCommand.UpdateCommand.Dispose();
}
if (dsCommand.DeleteCommand != null)
{
if (dsCommand.DeleteCommand.Connection != null)
dsCommand.DeleteCommand.Connection.Dispose();
dsCommand.DeleteCommand.Dispose();
}
dsCommand.Dispose();
dsCommand = null;
}
}
#endregion请问我在哪里进行修改,才能避免这个错误的发生
这很不正常你的系统框架估计不是你一个人写的 或者你还不熟悉
你应该把你系统的出错机制搞好。。不然以后出别的错误怎么办
<system.web>
<customErrors
mode="Off">
看看是什么错
在用处理完后加
Acn.Close();
这样就行了。
------------------------------
现在我已经捕捉不到这个错误了,我已经重新发布了,得过上几天才能出现,不过我发现了这个问题:
<add key="Ferroli.DataAccess.ConnectionString" value="server=192.168.0.31;User ID=sa;Password=;database=FerroliSPM;Connection Reset=FALSE"/>
我没有设置连接池数,也就是说使用的默认数,请问默认的连接池数是多少,对于50人同时在线 连接池可能溢出?
你关闭问题就解决了。
protected virtual void Dispose(bool disposing)
{
if (!disposing)
return;
if (dsCommand != null)
{
....
}
Acn.Open();//这里?
}
比如 datareader 毋用了static 等