マイクロサービス間で途切れたリクエスト追跡を復旧する
Backstitch: Restoring Request Causality Across a Production Microservice Fleet
この論文をやさしく読む
ひとことで言うと
サービス間で処理は成功していても追跡情報だけが消える問題を、実行の再現とソース解析で見つけて修正する仕組みです。
何に役立つ?
大規模なマイクロサービスでリクエストの追跡や管理に必要な文脈情報を保つための修復方法として参考になります。
この研究の面白いところ
既存のテストでは見逃される問題を、実際の実行の再現で特定し、同じ再現で修正後の因果関係を検証しています。
どこまで分かった?
報告値は一つの大規模動画プラットフォームのサービス群での結果です。途切れ率がゼロになったわけではなく、240件の呼び出しで4.69%が残りました。
v1のアブストラクトに基づくAI解説。日本語訳とは別に、用途の解釈を含みます。
アブストラクトの日本語訳
大規模な動画プラットフォームは数千のマイクロサービスで動き、各リクエストは下流の処理を追跡・管理できるよう、文脈情報を伝搬させる。独自のキューやコールバックなど、計測された経路の外にある受け渡しでは、処理対象のデータは進むが文脈情報は失われる。それでもリクエストは従来のテストに合格し、正常に処理される。このような途切れは気付かれにくく、広く見られた。1133サービスのうち673サービスに少なくとも一つ存在した。 専用のエージェントシステム Backstitch は、動き続けている実行を基準にして途切れを修復する。再実行によって疑わしい呼び出しがリクエストに結び付くかを判定し、ソース解析で原因となる受け渡しを特定し、範囲を限った変更で受け渡しの契約を復元し、同じ再実行で修正を検証する。修復は、記述する対象である処理を乱さずに因果関係の連鎖を回復した。修復された呼び出しのうち240件では途切れ率が90.46%から4.69%へ下がり、112日間でサービス群全体の途切れ率は半分以下になった。
v1の要旨から自動生成。本文の精読・人による確認は未実施。
- 初稿
- 2026-09-23(UTC)
- 最新改訂
- 2026-09-23 · v1
- 査読・掲載
- 査読状況未確認
更新履歴
- v1 2026-09-23 この版を読む
取得できた版を表示。版の更新は査読済みを意味しません。過去版の本文差分は未解析です。
原文の要旨
A major video platform runs on thousands of microservices, each request propagating a context so downstream work can be traced and governed. At handoffs outside instrumented paths, e.g., custom queues and callbacks, the payload continues but the context does not, and the request still succeeds under existing tests. Such breaks are silent and widespread: 673 of 1,133 services carried at least one. Backstitch, a specialized agentic system, repairs them using the surviving execution as its reference: replay determines whether a suspicious call is request-correlated, source analysis reaches the responsible handoff, a bounded change restores its contract, and the same replay validates the fix. Repairs restore the causal chain without disturbing the work it describes: breaks at 240 of the repaired calls fell from 90.46% to 4.69%, and over 112 days the fleet's break rate more than halved.
著者のコメント
25 pages, 14 figures, 14 tables
arXiv ID: 2609.27538 / 要約の誤りについて