MySQLのMVCC:マルチバージョン同時実行制御の仕組み

MySQLのMVCC:マルチバージョン同時実行制御の仕組み 1.1. 基本概念 MVCC(マルチバージョン同時実行制御) MVCC(Multi-Version Concurrency Control)は、データベース管理システムにおける同時実行制御の手法の一つです。MySQLでは、サーバーレベルではなくInnoDBストレージエンジンによって実装されています。 スナップショット読み取り ロックをかけないSELECT操作 ...

6月3日 22:58 投稿

Redis SETNXを用いた分散ロックの実装と注意点

分散システムにおける同時実行制御において、RedisのSETNXコマンドは重要な役割を果たします。特にユーザーごとの操作排他制御が必要な場面で効果を発揮します。 SETNXによる排他制御の基本実装 以下は、ユーザーが特定のアクティビティでギフトを受け取る際の排他制御の実装例です: public String obtainReward(int eventId, int rewardId, String userId) { if ( ...

5月18日 03:14 投稿