在ASP.NET应用程序中在后台提交nHibernate事务

时间:2013-06-19 12:34:26

标签: asp.net-mvc nhibernate

在ASP.NET MVC应用程序中使用nHibernate时,是否可以在后台提交事务,同时已将视图返回给用户?

因此,在达到“ActionExecuted”时,通常是使用每个请求会话模式时提交事务的点,我想在nHibernate开始提交时立即继续。这将允许用户更早地查看结果视图。

1 个答案:

答案 0 :(得分:0)

为什么不切换到基于队列的架构,而不是在后台提交(你可以用Thread做,只要你确保会话之后得到清理),为什么不切换到基于队列的架构呢?

优点:

  • 它实际上是为你想要的而不是黑客而设计的
  • 您可以根据需要扩展(相同的应用程序,不同的应用程序,不同的服务器,不同的数据中心......)
  • 如果您正确构建它,它可以提供比直接到数据库方法更高的可靠性

当然,有一个成本,即为队列创建DTO,然后构建实际的事务。而且,当您将控制权返回给用户时,请求并未真正完成(这是非确定性的。下一个请求可能会在数据库中找到数据)