交易(技术上)如何运作?

Posted

技术标签:

【中文标题】交易(技术上)如何运作?【英文标题】:How do transactions (technically) work? 【发布时间】:2013-12-08 18:08:03 【问题描述】:

我知道事务是什么以及它的好处和问题是什么——例如,在谈论面向 SQL 的数据库中的 ACID 模型时。到目前为止,一切顺利。

但我想了解它们在技术上是如何工作的。我猜想,无论是数据库还是文件系统,都存在一种如何使事物具有事务性的一般模式。我如何使事情原子化?

不幸的是,在 Google 上查找此内容时,您会发现很多文章解释了如何使用交易,但我确实知道这一点。我想知道他们是如何工作的

欢迎任何为我指明正确方向的示例、想法、链接、论文或其他东西(甚至是搜索自己的好词)。有什么提示吗?

【问题讨论】:

【参考方案1】:

交易基于两个重要概念:

2阶段提交协议 http://en.wikipedia.org/wiki/Two-phase_commit_protocol

2 锁相 http://en.wikipedia.org/wiki/Two-phase_locking

【讨论】:

感谢您的链接,他们都完美地解释了我想知道的内容。所以基本上它总是归结为:1. 执行操作,但标记为尚未完成,2. 询问所有参与者这是否有效,以及 3. 如果有效,则提交或回滚。 完全正确。这就是核心概念

以上是关于交易(技术上)如何运作?的主要内容,如果未能解决你的问题,请参考以下文章

金融知识

2小时快速扫盲:区块链及数字货币相关的基础法律知识

比特币合约交易怎么玩 新手应该注意什么

比特币如何防止伪造交易记录?

如何使用互联网技术来设计和制作支付交易系统和抢红包

区块链运作的7个核心技术,你知道几个?