Upgrade to Pro — share decks privately, control downloads, hide ads and more …

並行性の問題を防げ!実践トランザクション入門

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers. →

 並行性の問題を防げ!実践トランザクション入門

PHPカンファレンス愛媛 2026 登壇資料

Avatar for Shoichi Ochi

Shoichi Ochi

October 02, 2026

More Decks by Shoichi Ochi

Other Decks in Technology

Transcript

  1. 自己紹介 おち しょういち 越智 翔一 SmartBank, Inc. Software Engineer 出身:

    愛媛県西条市 趣味: 筋トレ @ochi11181101 @sho-work 2
  2. 3

  3. Introduction 並行性の問題の簡単な例 1. Tx Aが現在のカウンタを読む(=42) 3. カウンタを 42+1し、43でUPDATE 2. Tx

    Bが現在のカウンタを読む(=42) * https://www.oreilly.co.jp/books/9784873118703/ 17
  4. Appendix - 参考資料 • • • • • • •

    • • Designing Data-Intensive Applications(Martin Kleppmann, O'Reilly, 2017) ◦ https://www.oreilly.com/library/view/designing-data-intensive-applications/9781491903063/ データ指向アプリケーションデザイン(オライリー・ジャパン , 2019) ◦ https://www.oreilly.co.jp/books/9784873118703/ PostgreSQL: Transaction Isolation ◦ https://www.postgresql.org/docs/current/transaction-iso.html PostgreSQL: Explicit Locking ◦ https://www.postgresql.org/docs/current/explicit-locking.html PostgreSQL: Serialization Failure Handling ◦ https://www.postgresql.org/docs/current/mvcc-serialization-failure-handling.html MySQL 8.4: Transaction Isolation Levels ◦ https://dev.mysql.com/doc/refman/8.4/en/innodb-transaction-isolation-levels.html MySQL 8.4: InnoDB Locking ◦ https://dev.mysql.com/doc/refman/8.4/en/innodb-locking.html MySQL 8.4: Locking Reads ◦ https://dev.mysql.com/doc/refman/8.4/en/innodb-locking-reads.html MySQL 8.4: Deadlocks in InnoDB ◦ https://dev.mysql.com/doc/refman/8.4/en/innodb-deadlocks.html 162