微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

并发性 – 如何测试数据库中的竞争条件?

我尝试编写数据库代码以确保它不受竞争条件的影响,以确保我已锁定正确的行或表.但我经常想知道:我的代码是否正确?是否有可能强制显示任何现有的竞争条件?我想确保如果它们确实发生在生产环境中,我的应用程序将做正确的事情.

我一般都知道哪个并发查询可能会导致问题,但我不知道如何强制它们并发运行以查看是否发生了正确的行为(例如我使用了正确的锁定类型),正确的错误是抛出等

注意:我使用的是Postgresql和Perl,所以如果一般不能回答这个问题,那么它应该会被重新标记.

更新:如果解决方案是程序化的,我更喜欢它.这样我就可以编写自动化测试来确保没有回归.

解决方法

我一直用我的T-sql模块做这件事.

基本上,您需要做的就是在一个循环中从两个或多个连接运行模块几分钟.通常,假设您的sql Server盒具有不错的cpu,所有潜在的问题都会在几分钟内暴露出来.

我写了几个例子herehere.

原文地址:https://www.jb51.cc/mssql/79468.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐