ファン
検索
<< 2024年12月 >>
1
2 3 4 5 6 7
8
9 10 11 12 13 14
22
23 24 25 26 27 28
29
30 31
最新記事
写真ギャラリー
最新コメント
タグクラウド
カテゴリーアーカイブ
プロフィール
Y.Taki@AS400さんの画像
Y.Taki@AS400
IBM AS/400で稼働するシステムの開発・追加を担当して30年以上になります。使えば使うほどこの AS/400 が好きになりました。 こんなSEがいろいろな視点から様々な業務などについて語ります。

2023年08月28日

排他制御って知ってる?

九尾の狐.jpg
●難しい概念・・・でもない

皆さん、排他制御ってご存じですかー?

でも、皆さんは自然にやっちゃってるんですよ

それを小難しい言葉にすると排他制御って呼んでいます

どんな時に使っているかって言うと
貴方が上司から何か仕事を言いつけられている時に
部下が電話してきて、あーだこーだ言い始めた時に

「ごめん、ちょっと後にして」って言って
上司からの指示が終わったら、その部下に電話して
「ごめん、さっきの電話はなんだったかな?」って

こんなことって良くありますよね(笑)
排他の他はこの場合は部下をさしますね。
上司の指示を受けている時は部下を排除しています

そして、上司の指示が終わったら部下に何だったって聞き返すのが
制御にあたるわけですよね。
●データベース管理には必須

この排他制御、データベースの世界では必須なんです
だって、これが無かったらとっても困っちゃうんです

たとえば、あなたがある通販サイトで、超レアなグッズを見つけたとします。
金額が金額だけに、カートに追加を押したのはいいけれど
悩んでいるうちに・・・他の人が既に購入していた

そんな事あったら悲しいでしょ(笑)

なので、通販サイトとしては、あなたが購入しようとその商品をカートに入れたら
一定時間は他の人が購入できないようにブロック(排他)するんです
ただ、あなたが1年も2年も悩んだら通販サイト側が困るので
一定時間後にあなたの為のブロックを解除します。

でも、データベースの排他制御の方は最後の他の人に不都合なようになります。
それは、あなたの処理を完了させることを第一に考えるからです
これは、業務システムだけでなく、様々な処理で必要な事です

なので、データベース方式の排他制御を通販サイトで行った場合
?@あなたが、レア商品をカートに入れ、どこかに旅行に行ってしまう
?A別の人が、同じ商品をカートに入れようとしても、入れられない
?B別の人に、一定時間(例えば5分とか、10分とか)その商品が既に他の人がカートに入れているのであなたには売れないと通知が来る
?C別の人が、再度同じことをするけど、何度もメッセージが来る
?D別の人は、業を煮やしてサイト管理者にクレームを言う
?Eサイト管理者は、あなたのカートから商品を削除して開放する
●当社のは簡単

当社の場合、データベースが一か所なのでこのような排他制御はOSがやってくれます
あっ! IBM AS/400はOSがRDB機能を装備しているので

なので、チョー簡単です。
それに比べ
●親会社のは複雑すぎ

システムが多数存在し、それぞれがデータベースを装備しています
そして、システム間でファイルでやり取りします
当然、システムが別であれば排他制御データベースエンジンはやってくれません

今日も、その問題をどうしようかと悩んでいる会議でした
でも、あーだこーだ言いながら本質には全然近づきません

多分、一生やっていることでしょう
あ〜あ

●そういえば・・・過去にも


2021年4月にも、排他制御について記事を投稿したことがありました。
ブログ記事:排他制御は難しいかも
ブログ記事:排他制御は難しいかも・・・ Part 2
タグ: 排他制御
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント: 必須項目

この記事へのトラックバックURL
https://fanblogs.jp/tb/12187219

この記事へのトラックバック
Build a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: