正式運用的最佳實務

正式運用 最佳實務 監控 部署
本文的對象
適用於想在正式環境穩定運用 ReceiptRoller 串接應用程式的團隊的實踐指針。

將環境分為 3 個

環境 用途 RR 應用程式
正式實際顧客、實際店鋪正式應用程式
測試(staging)正式發布前的驗證測試用應用程式
開發日常開發、測試開發用應用程式(也可各人分開)

密鑰、資料庫、URL 全部分離。

監控(最低限度)

  • API 呼叫的成功率:低於 99% 時警告
  • 速率限制命中率:1% 以上時警告
  • Webhook 接收成功率:低於 99% 時警告
  • 權杖更新失敗:即時通知
  • 簽章驗證失敗:持續發生時警告
  • 處理佇列的滯留:超過閾值時警告

部署

  • CI 自動測試:型別檢查、單元測試、API 合約測試
  • 金絲雀部署:新版本先投入一部分流量
  • 回滾計畫:以 1 個命令回到前一版本
  • 遷移策略:DB 綱要變更以 2 階段(追加→刪除)發布
  • 功能旗標:新功能以 OFF 部署,正式環境再切換為 ON

追隨 ReceiptRoller 端的版本

  • 訂閱「公告」
  • Sunset / Deprecation 標頭輸出至日誌以獲知通知
  • 以月度審查盤點不建議 API 的使用
  • 新 API 版本推出後,在測試環境先行驗證

故障因應的基本結構

  1. 偵測:監控警報響起
  2. 啟動:待命負責人在 15 分鐘內著手
  3. 特定影響範圍:誰的什麼停止了
  4. 暫定因應:回滾、功能停止、手動因應
  5. 聯絡:通知受影響的店鋪、使用者
  6. 恆久因應:修正根本原因
  7. 回顧:事後檢討(不是追究責任而是改善)

維護文件

  • Runbook:常見故障的因應步驟
  • 架構圖:與 ReceiptRoller 的連接點
  • 聯絡方式:ReceiptRoller 支援窗口、內部團隊的聯絡方式
  • 環境變數一覽:什麼值、從哪裡取得
  • 復原步驟:DB 還原、部署回滾、密鑰重新產生

測試帳戶、測試資料

  • 伴隨正式存取的 E2E 測試,請使用專用的測試店鋪、測試使用者
  • 將測試用信用卡號碼、測試用信箱常數化
  • 原則上禁止使用正式資料進行測試(個人資訊的處理風險)

相關指南

發布日: 2026-04-27 更新日: 2026-07-06
標籤
API (22) OAuth (15) Android (10) iOS (9) Webhook (8) api (7) oauth (5) POS串接 (4) getting-started (4) 參考 (4)