当前位置:  开发笔记 > 编程语言 > 正文

交易最佳实践

如何解决《交易最佳实践》经验,为你挑选了2个好方法。

你依赖数据库交易多少钱?

您更喜欢小型还是大型交易范围?

您更喜欢客户端事务处理(例如.NET中的TransactionScope)而不是服务器端事务,反之亦然?

嵌套交易怎么样?

您有与交易相关的一些提示和技巧吗?

你遇到过与交易有关的任何陷阱吗?

欢迎各种答案.



1> Simon Johnso..:

我总是在一个using语句中包装一个事务.

using(IDbTransaction transaction )
{
// logic goes here.
   transaction.Commit();
}

一旦交易超出范围,它就会被处置掉.如果事务仍处于活动状态,则会回滚该事务.此行为失败 - 保护您不会意外地锁定数据库.即使抛出未处理的异常,事务仍将回滚.

在我的代码中,我实际上省略了显式回滚,并依赖using语句为我做的工作.我只是显式执行提交.

我发现这种模式大大减少了记录锁定问题.



2> Sara Chipps..:

就个人而言,开发一个基于高流量性能的网站,我尽可能远离数据库事务.显然它们是必要的,所以我使用ORM和页面级对象变量来最小化我必须进行的服务器端调用的次数.

嵌套事务是最小化调用的一种很棒的方法,只要它们是不会导致锁定的快速查询,我就可以随时指导这个方向.在这些情况下,NHibernate一直是救世主.

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有