[フレーム]
はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

気に入った記事をブックマーク

  • 気に入った記事を保存できます
    保存した記事の一覧は、はてなブックマークで確認・編集ができます
  • 記事を読んだ感想やメモを書き残せます
  • 非公開でブックマークすることもできます
適切な情報に変更

エントリーの編集

loading...

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。

タイトルガイドライン

このページのオーナーなので以下のアクションを実行できます

タイトル、本文などの情報を
再取得することができます
コメントを非表示にできます コメント表示の設定

ブックマークしました

ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください

Twitterで共有

ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します

326users がブックマーク コメント 18

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

排他制御のためだけに Redis 渋々使ってませんか?データベース単独でアドバイザリーロックできるよ!

326 users zenn.dev/mpyw

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

はてなブックマーク

はてなブックマークで
関心をシェアしよう

みんなの興味と感想が集まることで
新しい発見や、深堀りがもっと楽しく

ユーザー登録

アカウントをお持ちの方はログインページ

記事へのコメント18

  • 注目コメント
  • 新着コメント
sin20xx
アプリケーションの特性との兼ね合いで選択って感じかな。とはいえやりやすい方法(私はRedis多用)にツイツイ流れるのも事実。知識や経験として一通り(&今後も新しいテクニックがでてくるのでそれも)知るのが大事

その他
xlc
RDBの古典的な使い方(代替にテーブルロックにする実装もあり)なのだが、ORMとか使うマヌケは分かっておらず、無駄にこねくり回す。SQLと正規表現を嫌うエンジニアは勉強不足で害悪。

その他
codehex
MySQL の GET_LOCK はコネクションが切れたりしたせいで RELEASE_LOCK に失敗してしまうこととかを考えるとタイムアウトの指定が必須だと思ってる

その他
roshi
アドバイザリーロック知らなかった。Java(Spring)だとテーブルロックを使っていたような気がするけどEntityManager#createNativeQuery()呼び出せば使えそう。

その他
yojik
ロック用テーブルはよく使うかも。シンプルでこの例のようにロングトランザクションにも使えるし、DB実装やORMに影響されない。(DDDの集約ルートみたいに多少無理があるデータ構造にする必要もなくなるし)

その他
letitride
NoSQLで排他制御ってどっかで見たことあったんだけど、なるほど、Redisでの制御はこのようにやるのか。"SET キー "所有者" NX EX タイムアウト秒数"

その他
yujiorama
NOWAIT

その他
onesplat
セッションまたいでロック取りたいケースってどんなの?そんなあるか?

その他
dorapon2000
"そこで,新規作成を考慮しなければならない操作対象のリソースの代わりに,存在が保証されている別のリソースをロックするルールにしよう,という戦略を取ることができる。"

その他
ryer
これは良い記事だと思いました!

その他
ryuichi1208
NX EXあたりはまあという感じか

その他
codehex
codehex MySQL の GET_LOCK はコネクションが切れたりしたせいで RELEASE_LOCK に失敗してしまうこととかを考えるとタイムアウトの指定が必須だと思ってる

2022年07月07日 リンク

その他
BOOOOOOOON
払い出したアクセストークン保管する場所ぐらいの認識だった

その他
Surgo
DynamoDB がいいなー

その他
yojik
yojik ロック用テーブルはよく使うかも。シンプルでこの例のようにロングトランザクションにも使えるし、DB実装やORMに影響されない。(DDDの集約ルートみたいに多少無理があるデータ構造にする必要もなくなるし)

2022年07月07日 リンク

その他
nakag0711
MSSQLでいうところのアプリケーションロック、MySQLでいうところのユーザーレベルロック。アドバイザリーロックという言葉は強制的でないロックというほどの意味なのでなんか違和感が

その他
xlc
xlc RDBの古典的な使い方(代替にテーブルロックにする実装もあり)なのだが、ORMとか使うマヌケは分かっておらず、無駄にこねくり回す。SQLと正規表現を嫌うエンジニアは勉強不足で害悪。

2022年07月07日 リンク

その他
takyam1213
ろっくむずかしすぎる

その他
sin20xx
sin20xx アプリケーションの特性との兼ね合いで選択って感じかな。とはいえやりやすい方法(私はRedis多用)にツイツイ流れるのも事実。知識や経験として一通り(&今後も新しいテクニックがでてくるのでそれも)知るのが大事

2022年07月07日 リンク

その他
letitride
letitride NoSQLで排他制御ってどっかで見たことあったんだけど、なるほど、Redisでの制御はこのようにやるのか。"SET キー "所有者" NX EX タイムアウト秒数"

2022年07月07日 リンク

その他
prograti
これはこれで凄く有用だと思うけど、使うとすればテーブル設計に改善の余地がないかどうか検討した上でかな。DBに限った事ではないけど技術的な方法でバイパスする前にちょっと立ち止まって考えた方が良いかもですね

その他
iww
GET_LOCK

その他
roshi
roshi アドバイザリーロック知らなかった。Java(Spring)だとテーブルロックを使っていたような気がするけどEntityManager#createNativeQuery()呼び出せば使えそう。

2022年07月07日 リンク

その他
jukuringo
排他制御 ロック

その他

注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

リンクを埋め込む

以下のコードをコピーしてサイトに埋め込むことができます

プレビュー
アプリのスクリーンショット
いまの話題をアプリでチェック!
  • バナー広告なし
  • ミュート機能あり
  • ダークモード搭載
アプリをダウンロード

関連記事

usersに達しました!

さんが1番目にブックマークした記事「排他制御のためだ...」が注目されています。

気持ちをシェアしよう

ツイートする

排他制御のためだけに Redis 渋々使ってませんか?データベース単独でアドバイザリーロックできるよ!

トランザクション分離レベルについての教養があったほうがこの記事の内容を理解しやすいため,必要に応... トランザクション分離レベルについての教養があったほうがこの記事の内容を理解しやすいため,必要に応じてまず以下を参照されたい。 背景 以前, Qiita で以下の記事を投稿した。今回の議題に直接的な関係はないが,関連している部分があるため引用する。 MySQL/Postgres とも, MVCC アーキテクチャの恩恵で, SELECT と UPDATE は基的には競合しない。 単一レコードのシンプルな UPDATE でも排他ロックされ,排他ロック中のレコードへの UPDATE での変更操作は トランザクション分離レベルによらず ブロックされる。UPDATE 文に含まれる WHERE 句での検索もブロックされ,これはブロックされない SELECT による検索とは別扱いになる。 但し UPDATE 文の WHERE 句上で,更新対象をサブクエリの SELECT から自己参照している場合は例外。

ブックマークしたユーザー

  • shodai2024年06月23日 shodai
  • katsukiniwa2024年02月26日 katsukiniwa
  • yujiorama2024年02月17日 yujiorama
  • ktr_07312023年10月12日 ktr_0731
  • emmeleia2023年10月11日 emmeleia
  • fkmy2023年05月31日 fkmy
  • yururit2023年05月29日 yururit
  • techtech05212023年03月09日 techtech0521
  • l-_-ll2022年10月29日 l-_-ll
  • karahiyo2022年07月21日 karahiyo
  • tokb2022年07月20日 tokb
  • bootJP2022年07月13日 bootJP
  • mziyut1122022年07月13日 mziyut112
  • akaimo32022年07月12日 akaimo3
  • hiroqazu2022年07月11日 hiroqazu
  • kat212022年07月10日 kat21
  • diveintounlimit2022年07月09日 diveintounlimit
  • xef2022年07月09日 xef
すべてのユーザーの
詳細を表示します

ブックマークしたすべてのユーザー

同じサイトの新着

同じサイトの新着をもっと読む

いま人気の記事

いま人気の記事をもっと読む

いま人気の記事 - テクノロジー

いま人気の記事 - テクノロジーをもっと読む

新着記事 - テクノロジー

新着記事 - テクノロジーをもっと読む

同時期にブックマークされた記事

いま人気の記事 - 企業メディア

企業メディアをもっと読む

はてなブックマーク

公式Twitter

はてなのサービス

Copyright © 2005-2025 Hatena. All Rights Reserved.
設定を変更しましたx

AltStyle によって変換されたページ (->オリジナル) /