ノード間の信号
1)信号の概念
シグナル-ネットワーク内のセマンティック通信の最小単位:イベント、リクエスト、確認、ステータス、制限、ポリシー。「raw」パケットとは異なり、シグナルにはセマンティクス(型、スキーム、コンテキスト、不変量)と保証(デリバリ、順序、idempotency)があります。
目標:サービスの接続性を低減し、変更への対応をスピードアップし、ネットワークを管理し、観察可能にする。
2)シグナルタクソノミ
イベント:何が起こったかについての事実(作成、更新、解決、スラッシュ)。
コマンドアクションインテント(ミント、一時停止、RotateKey)。
クエリ/返信-状態/集計を取得します。
State Snapshot-Periodicスナップショット(limits、 quotas、 configs)。
アラート/インシデント:逸脱、劣化、SLA違反。
治理/Politiki(ガバナンス/ポリシー):関税、制限、バージョンのパラメータ。
クロスドメイン(X-Chain/X-Domain):信頼のチェーン/ゾーン間の権利/メッセージの転送。
各クラスはスキーマ(バージョンID、必須フィールド、不変量)によって固定されます。
3)メッセージモデル
最小構成:- 'signal_id' (ULID)、 'causality_id' (trace/span)、 'ts'、 'ttl'
- 'type'(名前空間:バージョン)、'schema_hash'
- 'producer_id'、 'domain'、 'auth_proof' (署名/VC/ZK)
- 'qos'(クラス)、'retries'、 'attempt'
- 'payload' (CBOR/JSON/ProtoBuf)、 'crc'
- 'idempotency_key'(ビジネスエンティティによる)
4) QoSおよび配達クラス
Q0 Fire-and-Forget:確認なし(テレメトリ、メトリック)。
Q1 At-Less-Once:レトライ、レシーバーでのデッドアップ、idempotency。
Q2正確に一度(有効):idempotent entry+dedup+transactional outbox/inbox。
Q3順序:キー付きパーティション。
Q4優先度/締め切り:重要なチームの優先順位と締め切り(EDF/LLF)。
ソリューション:デフォルトのQ1+idempotency;Q3-因果関係のある流れのために;Q4-avary/治理のために。
5)順序、因果性およびidempotence
因果関係キー:'aggregate_id'、 'version'、 'prev_hash'。
Outbox/InBoxパターン:トランザクションイベントのコミットとディスパッチ。
Idempotentハンドラ:'idempotency_key'を「seen table」+upsertに保存します。
調整:スナップショットとログの定期的なチェック(修復ジョブ)。
リトレイ/TTL制限:「永遠」の繰り返しとステートドリフトに対する保護。
6)流れ制御およびbackpressure
クォータとトークン:リーク/バケット、タイプ/消費者によるレート制限。
頻度/サイズの契約:バッチサイズ、窓、最高飛行。
Drop/Degradeポリシー:overload overview telemetry;重要なQ4sは落とさない。
公平性:WFQ/DRRキューイング。
適応性:PIDコントローラ:レイテンシーの増加→ウィンドウの縮小。
7)輸送およびタイヤ
ローカルイベントバス:Kafka/Pulsar/NATS/Redis Streams-キーによるパーティショニング。
同期クエリ-クエリ/返信gRPC/HTTP2、タイムアウト、およびサーキットブレーカ。
クロスドメインチャンネル:IBC/CCIPのようなレイヤー、プレッジ付きリレーヤ、証明可能な確認。
Edge/POP:ローカルバッファとコアへの再送信。
8)信号の安全
認証: S2SのためのmTLS/OIDC;署名されたメッセージ(EdDSA/secp256k1)
承認:トピックおよび信号のタイプのためのABAC/RBAC;RNFTの権利/制限。
整合性:バッチハッシュ/mercurializations、変更できないログ。
機密性:ZK/フィールド暗号化のフィールド(部分的な漏洩のためのFPE)。
詐欺防止:行動署名、蜂蜜トラフィック、確率的チェック。
9)観察可能性および追跡
相関:各信号のtrace-id/span-id、エンドツーエンドのラベル。
メトリクス:タイプ別のp50/p95レイテンシ、成功率、タイムアウト/レティ%、DLQ深度、消費者ラグ。
政治のログ:誰が、いつ、何が変わったのか(治理/limity)、署名と構成の拡散。
アラート:SLOエラー予算;重要なルートのための総合的なサンプル。
DLQ/リプレイ:デッドキュー、二重証明付きの再処理。
10)図とバージョン管理
スキーマレジストリ:フィールドの進化(back/forward互換)、semver型。
フィーチャーフラグ:フィールド/ロジックの段階的なアクティブ化。
互換性契約:古いプロデューサー↔新しいコンサマテストとその逆。
移行:デュアル書き込み/デュアル読み取り、ミラーのトピック、日没の計画。
11)リトレイおよび重複除外ポリシー
レトライ:指数遅延+ジッタ、最大試行回数、しきい値の後の隔離。
Dedup:パーティーまたはブルームフィルタごとに最後の'N'キーを格納する。TTLレコード。
反嵐:グループACK/NACK、結合イベント(debounce/aggregate)。
12)信号のためのSLA/SLO
ターゲットSLOの例(クラス別):- Q4: p95 ≤ 200ミリ秒、成功≥ 99。99%、 DLQ=0、インシデントMTTR ≤ 15分。
- Q3: p95 ≤ 500ミリ秒、成功≥ 99。9%、 ≤ 10⁻⁶/soobshcheniyeの順序の違反。
- Q1:成功≥ 99。Tウィンドウあたり5%、 p95 ≤ 1-2 s。
エラー予算:超過→自動ダウンロード速度、優先順位の有効化、機能の劣化フラグ。
13)クロスチェーン信号(マルチチェーン)
イベント証明:「リレー信頼」の代わりにライトクライアント/ステート証明。
Finality:ドメインの最終化の遅延、一時的なロック(チャレンジ期間)を計算します。
経済的保証:リレーヤーのS誓約、虚偽の確認のためのスラッシング。
X-Domain idempotency:グローバル'x_msg_id'、両端にテーブルが表示されます。
終了ポリシー:停止タップ、ボリューム/時間制限、攻撃のための手動クォーラム。
14)反衝撃及び乱用
偽の信号:強力な認証+行動異常検出器。
リプレイ攻撃:nonce/TTLとワンタイムキー。
生産者の照合:相関監査、ブラインドサンプル、バイアスの罰則。
イベントファーミング:品質(Qクラス)による充電、エッセンスによるレート制限。
15)実装のplaybook
1.ドメインと信号タイプのマッピング。criticality (Qクラス)、所有者、スキームを決定します。
2.トランスポートとトピックアーキテクチャの選択。因果キーによる分割。
3.SLO/SLA定義。エラーの予算、アラート、緊急時の手順。
4.Security-by-default。署名、mTLS、 ABAC、キー回転。
5.Idempotenceとdedup。Outbox/InBox、見たテーブル、TTL。
6.Backpressure。クォータ、ウィンドウ、優先順位、ラグのダッシュボード。
7.スキーマレジストリとバージョン管理。互換性の契約、テスト行列。
8.観測可能性。E2Eトレース、合成サンプル、DLQ/リプレイ。
9.パイロットとゲームの日。インシデントトレーニング、実際のログを再生します。
10.スケーリング。Xドメイン、制限、ストップコック、公共の死後。
16)メトリクスとダッシュボード
パフォーマンス:レイテンシp50/p95/p99、スループット、コンシューマラグ、機内。
信頼性:成功率、再試行%、DLQ深度、重複比。
順序:順序なし%、順序の間隔。
経済学:処理コスト/メッセージ、クラスのマージン、ペナルティ/インセンティブ。
安全:疑わしい信号の率、偽陽性/陰性。
治理:スキーム/ポリシーを展開する速度、ロールバックなしのアップグレード成功の割合。
17)契約/サービステンプレート
シグナルゲートウェイ:検証、認証、正規化、優先順位付け。
スキーマレジストリ:スキーマストレージ/検証、互換性。
シグナルルータ:タイプ/ドメイン、QoSクラス、レート制限によるルーティング。
Idempotency Store:キー、TTL、デッドアップ。
DLQ/リプレイサービス:検疫、遅延処理、Windows上でのリプレイ。
Xドメインリレー:証明、プレッジ、スラッシング、ファイナリティ。
Policy Hub: limit/config management、 change auditing。
18)配達チェックリスト
- すべての信号タイプに定義されたQoSおよびSLOクラス
- 有効な署名、mTLS、キー回転、ABAC
- 設定されたoutbox/inbox、 idempotentハンドラ、デッドアップ
- レート制限、バックプレッシャー、優先順位の実装
- 導入されたスキーマレジストリ、互換性テスト、migプラン
- 利用可能なダッシュボード:レイテンシ/ラグ/DLQ、エラー予算のアラート
- ゲーム日、リプレイ、死後
- Xドメインに含まれる証拠、誓約、ストップコック
19)用語集
QoS:配達保証/優先順位のクラス。
Idempotency:副作用のない繰り返し実行。
Backpressure:過負荷時の負荷を制限するメカニズム。
DLQ:処理に失敗した場合のデッドキュー。
トレース/スパン-エンドツーエンドのトレースID。
X-Domain/X-Chain:クロスドメイン/クロスチェーン信号ルート。
ボトムライン:適切に設計された信号は、ネットワークの「神経系」です。回路図、セーフガード、安全性、観察可能性を標準化することで、エコシステムは予測可能な配信、フォールトトレランス、および隠れた接続と手松葉杖なしの進化を獲得します。