我们有一个网站存在性能问题,存储过程执行是瓶颈。造成这种情况的原因之一是其中一些存储过程在页面加载时启动。因此,假设数据库负载很高,用户对页面上的报告加载所需的时间感到沮丧,并反复刷新页面,启动同一存储过程的新执行。这是我们用来执行存储过程和管理连接的代码:using (SqlCommand cmd = CreateCommand(qry, CommandType.StoredProcedure, args))            {                SqlDataAdapter adapt = new SqlDataAdapter(cmd);                DataSet ds = new DataSet();                adapt.Fill(ds);                return ds;            }即使用户离开页面或刷新页面,旧的执行仍然会访问数据库,产生一个新的。两种可能的解决方案:当生成它的用户离开它本来会显示的页面时,以某种方式终止存储过程的执行。更进一步,尝试保留连接的相同实例,以便如果用户点击同一页面,它将等待来自前一个存储过程的结果,然后在页面上显示这些结果。随着这些事情的发展,常见的做法是什么,它们是如何实施的?当用户离开调用它的页面时,我如何至少终止存储过程?
                    
                    
                1 回答
- 1 回答
 - 0 关注
 - 105 浏览
 
添加回答
举报
0/150
	提交
		取消
	