我有一个名为“每日结果”的表,其中包含我的应用程序中所有用户的计算信息。这个信息是在为每个用户运行计算方法后生成的。这个方法使用多个相对表的数据。
在我的应用程序中执行某些操作后,我需要为一个或所有用户重新计算“DailyResult”表的信息。
在这种情况下我将创建线程来做calc.but我的问题是当多用户调用calc方法时,线程将等待资源表(“DailyResult”)释放。该方法需要时间。
我们使用MVC 3,Sql server Enterprise 2012 64位,Dapper ORM用于插入 - 删除 - 更新信息。
我们已经使用nhibrenate但必须用dapper替换它。更好但是对于超过2000的并行用户,在Dailyresult表中插入删除更新信息需要花费时间。
处理此问题的最佳解决方案是什么,以达到最佳性能。您的建议是什么?
答案 0 :(得分:0)
我假设你在“reCalculate”阶段访问该表是什么?因此 - 如果您可以编辑用于从应用程序中的表中获取数据的查询,请添加“set transaction isolation level read uncommitted;”在开头