✓=レビュー済 ○=未レビュー ⚠=Suspect(複数同時表示あり。IDクリックで詳細へ)
| グループ | REQ | ARCH | SPEC | TST | IMPL | ADR |
|---|---|---|---|---|---|---|
| COMMON | REQ018 ✓ - **Beautyspot**: 本キャッシュライブラリの名称。 - **Spot**: 本ライブラリにおけるキャッシュ・レート制限のコアエンジンの... | — | — | — | — | — |
| リンク方向 | カバー数 | カバー率 | 未カバー |
|---|---|---|---|
| ARCH → REQ | 0 / 1 | 0.0% | REQ018 |
| ADR → REQ | 0 / 1 | 0.0% | REQ018 |
Beautyspot: 本キャッシュライブラリの名称。
Spot: 本ライブラリにおけるキャッシュ・レート制限のコアエンジンの名称。
キャッシュキー (Cache Key): 関数の入力引数等から一意に生成される識別子。
キャッシュヒット: 保存された結果を再利用し、元の関数を実行しないこと。
キャッシュミス: 結果が未保存または無効のため、元の関数を実行すること。
メタデータDB (Metadata DB): キャッシュの有効期限、サイズ、関数名などの付帯情報を保存するデータストア。
Blobストレージ (Blob Storage): キャッシュの実際のペイロード(戻り値のシリアライズ結果)を保存するストレージ。
シリアライザ (Serializer): 関数の戻り値をストレージに保存可能なバイト列等に変換、および復元するコンポーネント。
バックグラウンドIO (Background IO): メインスレッド(またはタスク)の実行をブロックせず、非同期にキャッシュ保存などを行う仕組み。
レート制限 (Rate Limiting): 外部API呼び出し等の頻度を制御する仕組み。トークンバケット方式を採用。
Thundering Herd: キャッシュミス時に、多数の並行リクエストが同時に同一関数を実行しようとして過負荷になる現象。
フック (Hook): キャッシュのライフサイクル(ヒット、ミス、保存前後等)に介入できるコールバック機構。
依存注入 (Dependency Injection / DI): 各コンポーネント(DB、ストレージ等)を外部から差し替え可能にする設計パターン。
仕様書アイテムに付与される groups 属性の意味は以下の通りです。
グループ名 | 意味 / 対象領域 |
|---|---|
| 関数キャッシュの基本機能(同期・非同期のデコレータなど) |
| キャッシュキーの生成ロジック(引数のハッシュ化など) |
| メタデータDB(有効期限、メタ情報の管理) |
| Blobストレージ(ペイロードの保存) |
| シリアライゼーション(データの変換処理) |
| バックグラウンドIO(非同期書き込み処理) |
| ライフサイクル管理(有効期限の判定、無効化ルールなど) |
| レート制限(トークンバケット方式等) |
| コールバックフックの仕組み |
| メンテナンス(キャッシュの削除、ガベージコレクション) |
| コマンドラインインターフェース |
| 依存注入の仕組みとデフォルトファクトリ |
| Thundering Herd対策(直列化、重複実行防止) |
| 共通定義(用語集など、特定の機能に縛られないもの) |
親: —
子: —