<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Long-Running on Tarragon</title><link>https://tarrragon.github.io/blog/tags/long-running/</link><description>Recent content in Long-Running on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Fri, 03 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/long-running/index.xml" rel="self" type="application/rss+xml"/><item><title>11.C44 Google AIP-151：長時操作實體化成 Operation resource</title><link>https://tarrragon.github.io/blog/backend/11-api-design/cases/longrun-google-aip151/</link><pubDate>Fri, 03 Jul 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/backend/11-api-design/cases/longrun-google-aip151/</guid><description>&lt;p>這個案例的核心責任是提供長時操作介面模式的系統化規範。&lt;/p>
&lt;h2 id="觀察">觀察&lt;/h2>
&lt;p>AIP-151 規定長時方法回傳 &lt;code>google.longrunning.Operation&lt;/code>（類比 Future / Promise）、必須標注 &lt;code>response_type&lt;/code> 加 &lt;code>metadata_type&lt;/code>；client 經 Operations service 輪詢；狀態欄位 &lt;code>done&lt;/code> / &lt;code>response&lt;/code> / &lt;code>error&lt;/code>（&lt;code>google.rpc.Status&lt;/code>）；操作約 30 天過期；validate-only 請求應直接回 &lt;code>done=true&lt;/code> 的完成 operation、免除狀態管理。&lt;/p>
&lt;h2 id="判讀">判讀&lt;/h2>
&lt;p>把「進行中的工作」實體化成可 GET 的 resource、是 202 加 Location 輪詢模式的系統化版本：回應型別在 annotation 先宣告、client 可以統一寫一套 polling 邏輯。&lt;code>done=true&lt;/code> 的 validate-only 條款示範「同一介面形狀涵蓋同步捷徑」的設計手法；30 天過期是 operation resource 生命週期需明訂的實例。&lt;/p>
&lt;h2 id="對應大綱">對應大綱&lt;/h2>
&lt;p>11.7 集合介面設計（長時操作段、anchor）、11.10 治理交叉（AIP 體系的一篇）。&lt;/p>
&lt;h2 id="下一步路由">下一步路由&lt;/h2>
&lt;p>回 &lt;a href="https://tarrragon.github.io/blog/backend/11-api-design/cases/" data-link-title="模組十一案例庫：API 設計與對外契約" data-link-desc="API 風格流派、版本與相容、介面語意、規範治理的已驗證公開案例集；含反例與覆蓋缺口標明">模組十一案例庫&lt;/a>。&lt;/p>
&lt;h2 id="引用源">引用源&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://google.aip.dev/151">AIP-151: Long-running operations（Google AIP）&lt;/a>&lt;/li>
&lt;/ul></description><content:encoded><![CDATA[<p>這個案例的核心責任是提供長時操作介面模式的系統化規範。</p>
<h2 id="觀察">觀察</h2>
<p>AIP-151 規定長時方法回傳 <code>google.longrunning.Operation</code>（類比 Future / Promise）、必須標注 <code>response_type</code> 加 <code>metadata_type</code>；client 經 Operations service 輪詢；狀態欄位 <code>done</code> / <code>response</code> / <code>error</code>（<code>google.rpc.Status</code>）；操作約 30 天過期；validate-only 請求應直接回 <code>done=true</code> 的完成 operation、免除狀態管理。</p>
<h2 id="判讀">判讀</h2>
<p>把「進行中的工作」實體化成可 GET 的 resource、是 202 加 Location 輪詢模式的系統化版本：回應型別在 annotation 先宣告、client 可以統一寫一套 polling 邏輯。<code>done=true</code> 的 validate-only 條款示範「同一介面形狀涵蓋同步捷徑」的設計手法；30 天過期是 operation resource 生命週期需明訂的實例。</p>
<h2 id="對應大綱">對應大綱</h2>
<p>11.7 集合介面設計（長時操作段、anchor）、11.10 治理交叉（AIP 體系的一篇）。</p>
<h2 id="下一步路由">下一步路由</h2>
<p>回 <a href="/blog/backend/11-api-design/cases/" data-link-title="模組十一案例庫：API 設計與對外契約" data-link-desc="API 風格流派、版本與相容、介面語意、規範治理的已驗證公開案例集；含反例與覆蓋缺口標明">模組十一案例庫</a>。</p>
<h2 id="引用源">引用源</h2>
<ul>
<li><a href="https://google.aip.dev/151">AIP-151: Long-running operations（Google AIP）</a></li>
</ul>
]]></content:encoded></item></channel></rss>