使用 Apache JMeter 測試效能

效能測試是確保 Oracle Analytics Cloud 能夠在不降低效能的情況下處理預期工作負載的基本步驟。您可以使用效能測試的開放原始碼工具 Apache JMeter 來模擬真實世界使用者體驗,並測量您 Oracle Analytics Cloud 報表的效能。

此圖表說明 Oracle Analytics Cloud 的效能測試處理作業。以下為 GUID-80613252-4A68-4BB8-896B-1CD2665062CA-default.jpg 的說明
.jpg

  1. 根據真實案例決定效能度量。

    若要決定效能度量,您必須瞭解 Oracle Analytics Cloud 的需求及使用者的期望。例如,如果您預期 Oracle Analytics Cloud 要處理大量使用者,則效能度量應著重在回應時間與傳輸量。同樣的,如果您預期 Oracle Analytics Cloud 要處理大量資料,則效能度量應著重在資源使用量。定義效能度量之後,便可以設定效能目標。

  2. 設計度量的測試計畫。

    您的測試計畫必須設計為模擬真實世界案例與工作負載。這表示您必須確定唯一虛擬使用者的數目、測試持續時間,以及要求之間的等待時間。請將唯一虛擬使用者的數目設為模擬您實際預期工作負載的實際值。同樣的,將測試持續時間設為代表使用者將執行報表期間的實際值。等待時間是使用者在兩個要求之間所使用的時間,因此您還必須設定一個實際的等待時間值來模擬真實世界案例。

    您還必須在命令檔中包含節奏,確保以真實的節奏來傳送要求。為了得到準確且實用的結果,Oracle 建議您針對不同的活動使用不同的等待時間,而不是使用固定的等待時間。例如,對於簡單的儀表板導覽,建議使用 20 秒的短等待時間,而對於提示選擇,建議使用 60 秒的中等待時間。同樣的在顯示報表時,Oracle 建議您使用 120-200 秒較長且隨機的等待時間。此方式可確保測試準確反映真實世界使用者行為,並產生可靠的結果。

  3. 關聯動態值。

    關聯與擷取和取代命令檔中的動態值有關,例如存取權杖、階段作業狀態 ID、CSRF 權杖和其他動態參數。無法關聯這些值可能會導致錯誤和不準確的結果。關聯對於 Oracle Analytics Cloud 等雲端應用程式不可或缺,因為其使用動態值來維護階段作業並處理使用者要求。若要簡化此處理作業,您可以下載 Oracle Analytics Cloud 的範例關聯規則庫 COR 檔案 ,其中包含一組預先建置的關聯規則,可用於建立 Oracle Analytics Cloud 的測試命令檔。

  4. 記錄並重播測試命令檔。

    JMeter 提供記錄使用者動作並將其轉換成測試命令檔的功能。您可以使用此功能記錄使用者在 Oracle Analytics Cloud 的動作,並建立可模擬真實世界案例的測試命令檔。您可以多次重播記錄的命令檔,以確認報表的效能。您必須設計可模擬真實世界案例的測試命令檔,例如搜尋資料、產生報表和視覺化資料。

  5. 以實際工作負載進行測試。

    若要模擬實際的工作負載,您必須將虛擬使用者數設為可模擬預期工作負載的實際值。您接著就能逐步增加工作負載以識別應用程式的容量上限。Oracle 建議您至少執行一個小時的測試以模擬真實世界案例,並設計可模擬尖峰使用狀況期間的工作負載,例如月底或會計年度結束。

  6. 分析結果。

    測試完成後,您可以分析結果以找出效能瓶頸,例如回應時間緩慢、錯誤率高,或使用過多的查詢容量。您可以使用 Oracle Cloud Infrastructure Monitoring 服務提供的度量和 JMeter 內建分析工具來執行此作業。一旦發現效能瓶頸,您就能對發現的問題採取行動,進而改善報表的效能。這包含最佳化查詢、改善系統設定組態,或增加 OCPU 數目。

    若您的報表未達到效能目標,可找出瓶頸並加以解決來進行最佳化。JMeter 監聽器可協助識別速度最慢的要求,您還能分析日誌以判斷效能問題的根本原因。若要提升 Oracle Analytics Cloud 的效能,您可能需要最佳化資料庫查詢、調整快取設定,或縱向擴展基礎架構。

遵循這些準則可確保 Oracle Analytics Cloud 符合您的效能要求,並為您的組織提供快速且流暢的體驗。定期執行效能測試可在使用者受影響前,發現問題並加以解決。