All Products
Search
Document Center

ApsaraDB RDS:Lock Blocking

Last Updated:Jun 21, 2026

Topik ini menjelaskan cara menggunakan halaman statistik lock blocking untuk mengidentifikasi sesi yang menyebabkan blocking berkepanjangan dan melihat detailnya.

Prasyarat

  • Instans harus menggunakan cloud disk.

  • Fitur ini tidak tersedia untuk instans ApsaraDB RDS for SQL Server 2008 R2 yang menggunakan cloud disk.

  • Fitur ini hanya tersedia untuk instans ApsaraDB RDS for SQL Server di wilayah berikut: China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapura, atau UEA (Dubai).

Informasi latar belakang

Di SQL Server, untuk menjaga konsistensi data, sistem akan mengunci suatu resource saat sesi memodifikasinya. Hal ini mencegah sesi konkuren lain mengakses atau memodifikasi resource yang sama. Dalam kondisi normal, kunci tersebut hanya dipertahankan dalam waktu singkat dan dilepas setelah modifikasi selesai, sehingga sesi berikutnya dapat mengakses resource tersebut. Namun, masalah seperti pernyataan SQL yang lambat dapat menyebabkan resource terkunci dalam periode yang lama, yang berdampak signifikan terhadap kinerja.

Untuk mengatasi masalah ini, ApsaraDB RDS for SQL Server menyediakan halaman statistik lock blocking. Di halaman ini, Anda dapat dengan cepat menemukan informasi seperti Server Process ID (SPID) dari sesi yang menyebabkan blocking, waktu terjadinya blocking, dan pernyataan SQL yang menyebabkan blocking tersebut. Informasi ini membantu Anda mengidentifikasi akar permasalahan.

Cara kerja

Sesi yang terblokir selama sekitar 2 detik biasanya tidak menimbulkan masalah besar. Namun, jika beberapa sesi berulang kali terblokir lebih dari 2 detik dalam periode singkat, hal ini dapat berdampak signifikan terhadap keseluruhan sistem.

Sistem melakukan pengambilan sampel lock blocking setiap 10 detik. Pada setiap titik sampling, jika suatu sesi telah mengeksekusi pernyataan SQL lebih dari 2 detik dan sedang memblokir sesi lain, sistem akan menangkap dan mencatatnya di halaman statistik lock blocking.

Prosedur

  1. Buka halaman Instances. Di bilah navigasi atas, pilih wilayah tempat instans RDS berada. Lalu, temukan instans RDS tersebut dan klik ID instansnya.

  2. Di panel navigasi kiri, pilih Autonomy Services > Lock Optimization.

  3. Klik tab Blocking untuk melihat detail blocking pada instans tersebut.

Deskripsi halaman

  • Blocking Overview

    Menampilkan jumlah event blocking dalam rentang waktu tertentu.

    Rentang waktu mencakup Last 24 Hours, Last 7 Days, Last 14 Days, dan Last 30 Days.

  • Blocking Duration Trend

    Menampilkan grafik tren durasi blocking untuk periode waktu yang dipilih.

    Arahkan kursor ke titik waktu tertentu untuk melihat detail blocking-nya, yang mencakup hal-hal berikut:

    • Waktu terjadinya blocking.

    • Processes_blocked: Jumlah sesi yang terblokir.

    • Uncommited_tran: Jumlah transaksi yang belum dikomit.

      Catatan

      Transaksi yang belum dikomit tidak melepas kunci.

    • QueryHash (nilai hash dari pernyataan SQL tertentu) dan waktu blocking terkait.

    阻塞趋势

  • Blocking Source Details

    Menampilkan informasi detail tentang sumber blocking. Detail tersebut mencakup hal-hal berikut:

    • SPID: SPID dari sesi yang menyebabkan blocking.

    • QueryHash: Nilai hash yang dihasilkan dari pernyataan SQL. Pernyataan SQL dengan tipe yang sama memiliki QueryHash yang sama.

    • Wait Type: Alasan sesi yang menunggu terblokir. Untuk informasi lebih lanjut mengenai wait types, lihat Wait Types.

    • Execution Duration (ms): Durasi sesi tersebut telah berjalan.

    • SQL: Pernyataan SQL yang menyebabkan blocking.

      Catatan

      Arahkan kursor ke pernyataan SQL dan klik ikon 复制 yang muncul di sebelah kanan untuk menyalin pernyataan SQL tersebut.

    • Time: Waktu terjadinya blocking.

    • Database Name: Nama database tempat blocking terjadi.

    Klik di mana saja pada baris untuk melihat Diagram Blocking yang sesuai di bagian bawah halaman.

  • Blocking Diagram

    Menampilkan SPID yang memblokir (merah), SPID yang diblokir (biru), tipe kunci, dan durasi blocking. Untuk informasi lebih lanjut mengenai tipe kunci, lihat Lock Types.

    阻塞关系图

    Arahkan kursor ke SPID untuk melihat detail blocking-nya, yang mencakup hal-hal berikut:

    • SPID: ID proses server.

    • BlockedBySpid: SPID dari sesi yang menyebabkan blocking.

    • WaitType: Tipe tunggu.

    • WaitTimeMs: Durasi pemblokiran dalam milidetik.

    • CMD: Tipe perintah SQL untuk sesi saat ini.

    • CPU: Waktu CPU, dalam milidetik.

    • DBName: Nama database.

    • ClientAppName: Nama aplikasi klien.

    • HostName: hostname klien.

    • LoginId: username.

    • PhysicalIO: I/O yang dikonsumsi oleh sesi saat ini. 1 PhysicalIO setara dengan 8 KB.

    • QueryHash: Nilai hash yang dihasilkan dari pernyataan SQL. Pernyataan SQL dengan tipe yang sama memiliki QueryHash yang sama.

    • StartTime: Waktu mulai batch saat ini. Satu batch dapat berisi beberapa pernyataan SQL dan berbagi resource seperti nilai variabel.

    • Status: Status sesi saat ini.

    • SQL: Klik SPID merah atau biru untuk menampilkan detail eksekusi SQL di bawah Blocking Diagram.

  • SQL Details

    Di Blocking Diagram, klik SPID merah atau biru untuk menampilkan detail eksekusi SQL untuk sesi tersebut. Klik Click to Copy untuk dengan cepat menyalin pernyataan SQL guna analisis atau troubleshooting.