oracle效能調整的九大要點:四診斷latch競爭

來源:互聯網
上載者:User
1、概念
    Latch是簡單的、低層次的序列化技術,用以保護SGA中的共用資料結構,比如並發使用者列表和buffer cache裡的blocks資訊。一個伺服器處理序或後台進程在開始操作或尋找一個共用資料結構之前必須獲得對應的latch,在完成以後釋放latch。不必對latch本身進行最佳化,如果latch存在競爭,表明SGA的一部分正在經曆不正常的資源使用。

    1)Latch的作用:
    A、序列化訪問:保護SGA中的共用資料結構;保護共用記憶體的分配。
    B、序列化執行:避免同時執行某些關鍵代碼;避免互相干擾。

    2)Latch請求的兩種類型:
    A、willing-to-wait:請求的進程經過短時間的等待後再次發出請求,直到獲得latch
    B、immediate:如果沒有獲得latch,請求的進程不等待,而是繼續處理其他指令。
    2、檢查Latch競爭
    檢查latch free是不是主要的wait event:
    Select * from v$system_event order by time_waited;

    檢查latch的使用方式:
    Select * from v$latch:
    與willing-to-wait請求有關的列:gets、misses、sleeps、wait_time、cwait_time、spin_gets
    與immediate請求有關的列:immediate_gets、immediate_misses

    Gets: number of successful willing-to-wait requests for a latch;
    Misses: number of times an initial wiling-to-wait request was unsuccessful;
    Sleeps: number of times a process waited after an initial willing-to-wait request;
    Wait_time: number of milliseconds waited after willing-to-wait request;
    Cwait_time: a measure of the cumulative wait time including the time spent spinning and sleeping,the overhead of context switches due to OS time slicing and page faults and interrupts;
    Spin_gets: gets that misses first try but succeed after spinning.

    Immediate_gets: number of successful immediate requests for each latch;
    Immediate_misss: number of unsuccessful immediate requests for each latch;

    一般無需調整latch,但是下列的措施是有用的:
    A、對處於競爭中的latch做進一步的調查
    B、如果競爭主要存在於shared pool和library cache中,可以考慮調整應用
    C、如果進一步的調查顯示需要調整shared pool和buffer cache,就進行調整

    Select * from v$latch where name like ‘%shared pool%’ or name like ‘%library cache%’;

    如果競爭是在shared pool或library cache上,表示下列集中情況:
    A、不能共用的sql,應檢查他們是否相似,考慮以變數代替sql中的常量:
    Select sql_text from v$sqlarea where executions=1 order by upper(sql_text);
    B、共用sql被重新編譯,考慮library cache的大小是否需要調整:
    SELECT sql_text,parse_calls,executions FROM v$sqlarea where parse_calls>5;
    C、library cache不夠大。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.