技術的な意思決定において制約やトレードオフを明示することの重要性
2025年8月5日技術選定や設計判断を行う際には、制約やトレードオフを明示することが極めて重要である。 意思決定とは、常に限られた条件のもとで、複数の選択肢から最適なものを選ぶ行為である。したがって、その判断がどのような前提や制限の中で行われたのかを明文化しない限り、後から見て「なぜこの選択がされたのか」を理解することは困難となる。 意思決定の前提を明示できる 技術的な意思決定は、「その時点での状況」「与えられた制...
技術選定や設計判断を行う際には、制約やトレードオフを明示することが極めて重要である。 意思決定とは、常に限られた条件のもとで、複数の選択肢から最適なものを選ぶ行為である。したがって、その判断がどのような前提や制限の中で行われたのかを明文化しない限り、後から見て「なぜこの選択がされたのか」を理解することは困難となる。 意思決定の前提を明示できる 技術的な意思決定は、「その時点での状況」「与えられた制...
Webアプリケーションや分散システムでパフォーマンスを高めるために不可欠なのが「キャッシュ」の基本的な活用パターンについて書く。 キャッシュアサイド(Cache Aside) リードスルー(Read Through) ライトスルー(Write Through) ライトバック(Write Back) ライトアラウンド(Write Around) キャッシュアサイド(Cache Aside) 概要...
トランザクションモデルであるACIDとBASEについて述べる。 ##ACIDとは ACIDは、主にリレーショナルデータベース(RDB)で用いられるトランザクションの4つの性質を表す。 特性 意味 概要 Atomicity(原子性) トランザクションはすべて成功するか、すべて失敗する All or Nothing - 中途半端な状態は残らない Consistency(一貫性) データ...
この記事では、Webアプリケーションの代表的な処理モデルについて書く。 イベントループ スレッド プロセス 各処理モデルの概要 イベントループモデル(非同期・シングルスレッド) 特徴:1つのスレッドで、イベント(非同期IOなど)を順に処理 代表例:Node.js、Deno、JavaScript(ブラウザ) [ イベントキュー ] → [ イベントループ ] → [ 実行 ] メリット ...
分散システムにおける重要な理論であるCAP定理とPACELC定理について書く。 CAP定理とは CAP定理とは、分散システムにおいて以下の3つの特性のうち、同時に2つまでしか実現できないという理論である: Consistency(一貫性):全ノードが同じデータを返す Availability(可用性):常に応答が返る Partition Tolerance(分断耐性):ネットワークが分断しても動...
概要 Open Policy Agent(OPA)は、ポリシーによるアクセス制御を疎結合な形で実現できる強力な仕組みである。Regoという宣言的言語でルールを記述し、アプリケーション側からはシンプルな形式でポリシー評価を利用できる。 本記事では、OPAを利用したアクセス制御の代表的なパターンを整理し、それぞれの特徴や適した用途、実装負荷などを比較する。 以下に、あなたが挙げた4つのアクセス制御アプ...