10章分散データアクセス
1月3日(月)12時43分
「expert_profile
テーブルの所有権をユーザー管理サービスに割り当てましたが、チケット割り当てサービスはどのようにエキスパートの位置情報やスキルデータを取得すればよいでしょう? 前にも言いましたが、データベースへの読み込み回数が多いので、テーブルへの問い合わせが必要になるたびにリモート呼び出しを行うのは現実的ではないですよね」
「割り当てアルゴリズムの動作方法を変更して、必要なクエリの数を減らすことはできませんか?」アディソンは尋ねた。
「私にはさっぱり」シドニーは答えた。「テイレンはそのアルゴリズムを保守している一人ですね」
アディソンとシドニーはテイレンに会い、データアクセスの問題について議論し、テイレンがエキスパート割り当てアルゴリズムを修正して、expert_profile
テーブルへのアクセス回数を減らせるかを確認した。
「冗談じゃないです」テイレンは言った。「そんな風に割り当てアルゴリズムを書き換えるなんて、絶対に無理です」
「でも、他には、割り当てアルゴリズムがエキスパートの情報を必要とするたびに、ユーザー管理サービスへのリモート呼び出しを行うしか選択肢がないんですよ」アディソンは言った。
「えっ?」テイレンは叫んだ。「そんなことはできません!」
「私も同じように言ったんです」シドニーが言った。「それでは、また振り出しに戻ってしまいます。この分散アーキテクチャは難しい。こんなことは言いたくありませんが、実際、モノリシックなアプリケーションが恋しくなってきました。あ、そういうことか。分かりましたよ。RESTではなく、ユーザー管理サービスをメッセージングで呼び出してみたらどうでしょうか」 ...
Get ソフトウェアアーキテクチャ・ハードパーツ ―分散アーキテクチャのためのトレードオフ分析 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.