簡體   English   中英

Apigee代理性能調整

[英]Apigee proxy performance tuning

是否有建議/最佳方法來生成有關API代理的每個策略所花費時間的報告?

當前,我的方法是使用JS收集時間戳並計算每個策略的延遲,然后使用統計信息收集策略報告該時間。

對於性能檢查而言,這過於侵入性,僅我的數據收集就為整體響應增加了時間。

在分析多個請求中的數據時,最好的無創方法是報告每個步驟所花費的時間(在跟蹤模式下,ui會根據單個請求顯示每個策略的時間)

謝謝,

里卡多

不支持公共API來計算此信息並返回匯總的策略執行時間數據的簡潔明了的響應。 最好的選擇是嘗試使用具有request_processing_latencyresponse_processing_latency度量的Analytics(分析)報告。 http://apigee.com/docs/content/analytics-reference )。 然后,如果需要,利用跟蹤來識別策略執行時間。

另外,您可以嘗試下載跟蹤會話並解析策略之間的時間戳以構建您的信息,但是在UI中進行跟蹤已經做到了。

您考慮使用調試API。 http://apigee.com/docs/api/debug-sessions

首先,您需要啟動一個會話,例如:

curl -H "Content-type:application/octet-stream" -X POST https://api.enterprise.apigee.com/v1/organizations/{org}/environments/{env}/apis/{api_name}/revisions/{revision #}/debugsessions?"session=MySession" \\ -u $ae_username:$ae_password

從會話中獲取信息:

curl -X GET -H "Accept:application/json" \\ https://api.enterprise.apigee.com/v1/organizations/{org}/environments/{env}/apis/{api_name}/revisions/{revision #}/debugsessions/MySession/data \\ -u $ae_username:$ae_password

可以使用UI中的調試跟蹤找到每個策略花費的時間。

請參見以下屏幕截圖。

同樣,正如Diego所說,您可以使用debugsession API調用來獲取調試會話。

對於調試會話,您還可以定義要調試會話運行多少時間的時間限制。 這樣,如果您將性能測試運行1個小時,則可以在這么長的時間內創建調試會話。

     curl -v -u jhans@apigee.com               http://management:8080/v1/organizations/weatherapi/environments/prod/apis/ForeCast/revisions/6/debugsessions?session=ab\&timeout=300 -X POST

從UI中,您可以下載跟蹤會話,該會話將包含具有每個策略時間戳記的XML。

     <Point id="Condition">
      <DebugInfo>
        <Timestamp>05-02-14 04:38:14:088</Timestamp>
        <Properties>
            <Property name="ExpressionResult">true</Property>
      </Point>
     <Point id="StateChange">

上面是一個示例,用於從UI獲取調試跟蹤中任何策略的時間戳。

里卡多,這是我的建議。

免責聲明:這是非常細致且耗時的。 僅當您確實在性能問題上受阻且沒有其他解決方案時,我才建議使用此方法。

讓我們說您的代理服務器幾乎沒有策略,即對外部服務的服務標注和后端。

因此,總延遲為(p1,p2,p3 ...)花費的時間總和+服務標注目標+后端花費的時間。

  1. 第一步將是消除外部依賴關系。 您可以使用空目標(Apigee邊緣上的存根代理,無需任何邏輯)。
  2. 現在禁用所有其他策略(策略架構上的enable = false)。 進行負載測試,並根據存根端點對代理性能進行基准測試。 同樣,此時沒有任何策略處於活動狀態。
  3. 一次開始一個或幾個激活策略,然后每次重新運行負載測試。
  4. 最后,您可以對真實的后端運行負載測試(刪除存根)

在這一系列負載測試的最后,您將知道后端對哪個策略的性能影響最大。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM