dataiotech Labs
dbaguidedbaguideDBAdataxtoolsdataopsphere
Home/Terimler Sözlüğü/Latch vs Enqueue
Latch vs EnqueuePerformance & Recovery

Latch vs. Enqueue (Bellek Kilidi vs. Nesne Kilidi)

Latch paylaşımlı belleği koruyan mikro saniyelik CPU spin kilitleridir; Enqueue ise veritabanı nesnelerini koruyan, kuyruklu ve bekleme mekanizmalı mantıksal kilitlerdir.

Derin Mimari İncelemesi

Latch, işletim sistemi semaforlarına gitmeden önce CPU üzerinde hızlıca döner (spin lock) ve bellekteki kısa veri yapısını (örn: Buffer Hash Bucket) mikrosaniyeler içinde kilitler.

Enqueue (TX, TM vb.) ise FIFO sırasına sahip, oturumların kuyrukta beklediği ve deadlock algılama mekanizmasına sahip gerçek veritabanı kilitleridir. Yüksek Latch çekişmesi CPU tüketirken, Enqueue çekişmesi uygulama blokaj zincirlerine yol açar.

Üretim Gözlem ve Tanı Sorguları

Oracle
SELECT name, gets, misses, spin_gets, sleeps FROM v$latch WHERE misses > 0 ORDER BY sleeps DESC;
SELECT type, id1, id2, lmode, request, ctime, block FROM v$lock WHERE block > 0 OR request > 0;