2014-01-30 99 views
0

我正在執行100次Web服務。此服務的平均響應時間爲1.5秒。但是,當我分別查看每次執行的響應時間時,有幾次執行(至少10次),超過15秒纔會響應。每個請求的數據與之前的任何請求完全相同(只需在名稱後附加一個動態數字等)。偶爾數據庫很慢

它肯定看起來像一個數據庫問題,因爲我的數據庫每次執行同一個查詢的次數都不一樣。我無法理解爲什麼我的數據庫的行爲如此。我的數據庫是oracle 11g。我以前也遇到過不同UI流的這個問題。

以下是收集的指標

enter image description here

+0

您是以串聯還是並聯方式運行這些測試?他們是否在競爭資源,例如來自連接池? –

回答

0

可以有多種原因的總結,供大家查詢第一

  1. 檢查查詢計劃(這是多少時間服用執行),有時候響應速度慢的一個原因可能是由於緩存和高速緩存條目舊的原因,然後再次從DB獲取數據,這需要花費時間
  2. 另一個問題可能是文件系統操作操作/系統操作/守護進程/一些porcesses在經過特定的時間間隔後臺運行的,如果你的工作流程涉及一些寫入/更新操作,然後磁盤寫操作可能會發生同步這是使你的工作流程/ web服務執行緩慢
  3. (用做內部處理數據庫延遲寫入,延遲寫入等)

還有其他原因,但請首先檢查這些。 檢查您的系統日誌,數據庫日誌,診斷日誌以查找屏幕後面正在發生的事情,這肯定會告訴您在哪裏集中注意力。