14,954
edits
| Line 90: | Line 90: | ||
'''解決方案:''' | '''解決方案:''' | ||
只需移除其中一種模式即可解決此問題。建議保留較通用的模式 <code>''.example.com/''</code>,因為它已經包含了 <code>example.com</code>。 | 只需移除其中一種模式即可解決此問題。建議保留較通用的模式 <code>''.example.com/''</code>,因為它已經包含了 <code>example.com</code>。 | ||
=== 排解:Discovery Engine 中的 "Search lite requests" 超出額度錯誤 === | |||
'''問題描述''': | |||
當使用 Discovery Engine API 來取得搜尋結果時,發生以下錯誤: | |||
<pre> | |||
{ | |||
"error" : { | |||
"code" : 429, | |||
"message" : "Quota exceeded for quota metric 'Search lite requests' and limit 'Search lite requests per minute' of service 'discoveryengine.googleapis.com' for consumer 'project_number:XXX'.", | |||
"status" : "RESOURCE_EXHAUSTED", | |||
... | |||
} | |||
} | |||
</pre> | |||
'''根本原因:''' | |||
錯誤回應中的 metadata 已標示該額度為 100 請求/分鐘 | |||
'''解決步驟''':解決 API 配額限制超出問題 | |||
'''選項一:增加請求 (request) 之間的延遲時間''' | |||
# 在程式碼中實作此延遲時間以避免 429 錯誤,例如:在每次請求之間添加 1 秒的暫停以符合速率限制 | |||
# 根據配額和請求模式,動態調整延遲時間 | |||
'''選項二:提高額度限制''' | |||
# 前往 Google Cloud Console 的額度頁面並找到 "Search lite requests per minute" | |||
# 選擇相關配額,點擊 "EDIT QUOTAS",並提交更高限制的申請 | |||
# 等待 Google Cloud Support 審核批准 | |||
'''選項三:實作指數退避重試機制''' | |||
# 在應用程式中偵測 HTTP 429 錯誤並設置初始延遲(例如 1 秒) | |||
# 每次重試失敗後增加延遲時間(例如 2 秒、4 秒、8 秒等) | |||
# 持續重試直到請求成功或達到最大重試次數 | |||
== 相關頁面 == | == 相關頁面 == | ||