[異常等待事件rdbms ipc reply]-分析說明
rdbms ipc reply 等待嚴重,資料庫整體效能下降
2013 年 2 月 2 號 12:40 至 13:00 ,客戶前臺業務操作比較緩慢。 資料庫 1 號節點 CPU 資源比較緊張,使用率在 90% 以上,同時 1 號節點也出現了比較多的 rdbms ipc reply 等待事件。
對 客戶 業務系統執行進行綜合判斷之後,基本確認為在混合批處理環境下的業務高併發導致,業務執行是相對緩慢而不是無法繼續。在無法確認應用是否變化的前提下,基本可以排除應用程式原因。綜合來看,導致本次業務執行緩慢的主要原因有以下幾點:
l 1 號節點 CPU 負載過高,使用率達到了 95% 左右。
l 1 號節點高併發環境的軟解析指標過高,每秒鐘達到了 8500 次左右,而 2 號節點每秒鐘只有 2300 次左右,負載不均衡。
l 軟解析過高導致 RAC 後臺程式 lck 壓力過大。 lck 程式主要用於傳遞 library cache 和 row cache 之間的資源。而 CPU 負載過高又會導致 lck 程式無法獲得 CPU 時間片,進而導致 lck 出現等待。
l Bug 10314582 。該 BUG 在 Oracle 11.2.0.3 修復。
2013 年 2 月 2 日 13 點左右 客戶 資料庫 1 號節點主機 CPU 資源比較緊張,使用率高達 95% 以上,如下所示:
同時 1 號節點出現瞭如下等待事件,其中 rdbms ipc reply 等待事件居於首位,每次等待時間高達 118ms ,如下所示:
進一步通過檢視 ASH 報告,發現該等待事件主要由 lck 程式引起, 44 號表示 lck 程式 , 如下所示:
等待 rdbms ipc reply 的 SQL 語句為 ggw0k4vu2q9yc :
該 SQL 語句執行頻率非常之高,每秒鐘高達 183 次:
lck 程式的主要作用是協調非 Cache Fusion 資源( Cache Fusion 資源主要指的是資料塊,由 lms 程式負責傳輸),如協調 library cache 和 row cache 中的資源。當系統的 CPU 資源比較緊張的時候, lck 程式可能會由於獲得不了 CPU 時間片,而導致協調資源效率低下。而故障期間 1 號節點的軟解析次數高達 8382 次,進一步加劇了 lck 程式的繁忙程度,如下所示:
根據客戶反饋,故障期間 lck 程式主要等待 css group membership query 等待事件,該等待事件就是協調節點間的資源。
查詢 MOS ,發現類似 BUG ,該 BUG 在 11.2.0.3 中已經修復, MOS DOC ID 如下所示:
Bug 10314582 - "rdbms ipc reply" waits when parsing in RAC (Doc ID 10314582.8)
( 1 )、增加 SESSION_CACHED_CURSORS 的值來緩解一下軟解析高的問題,目前改值為 300 ,調整到 500 。
( 2 )、確認 sqlid 為 ggw0k4vu2q9yc 執行如此頻繁的原因,降低 CPU 消耗。
( 3 )、確認雙節點業務負載不均衡原因, 1 號節點軟解析高達 8500 左右,而二號節點只有 2500 左右。
( 3 )、 CRM 升級至 11.2.0.3.5 。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23732248/viewspace-2887195/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [異常等待事件latch undo global data]分析事件
- buffer busy wait 等待事件說明(轉)AI事件
- 【WAIT】 log file sync等待事件說明AI事件
- ORACLE 常見等待事件Oracle事件
- Oracle10g等待事件型別wait_class說明Oracle事件型別AI
- oracle自帶指令碼說明(rdbms,ctx,sqlplus,javavm)Oracle指令碼SQLJava
- Oracle常見UNDO等待事件Oracle事件
- read by other session 等待事件分析Session事件
- oracle常見異常等待——latch處理思路Oracle
- 故障分析 | 從 data_free 異常說起
- MySql Binlog 說明 & Canal 整合MySql的更新異常說明 & MySql Binlog 常用命令彙總MySql
- 常見佇列等待事件處理思路佇列事件
- enq: TX - allocate ITL entry等待事件分析ENQ事件
- 常見的wait等待事件及處理(zt)AI事件
- linux常見命令說明Linux
- Solidity事件,等待事件Solid事件
- Flutter 常見異常分析Flutter
- 說說 Spring DAO 的異常體系Spring
- 【TUNE_ORACLE】等待事件之等待事件類別Oracle事件
- 說說在 Python 中如何處理異常Python
- 舉例說明js滑鼠事件有哪些?JS事件
- HTTP 常見狀態碼說明HTTP
- binlog 異常暴漲分析
- Selenium等待事件Waits事件AI
- linux 常見命令及說明雜記Linux
- [20211229]再論19c latch free等待事件分析.txt事件
- 重啟大法失效?詳述Oracle11g因JDBC bug引發異常Library Cache Lock等待處理事件OracleJDBC事件
- Android IPC 機制分析Android
- 跑批SQL效能異常分析SQL
- read by other session等待事件Session事件
- log file sync等待事件事件
- latch等待事件彙總事件
- Latch free等待事件(轉)事件
- gc cr request等待事件GC事件
- 【等待事件】library cache pin事件
- 【等待事件】log file sync事件
- mybatis快取,從一個“靈異”事件說起MyBatis快取事件
- wireshark、異常資料分析、常見RST介紹