Baru-baru ini kami mengalami masalah dengan penguncian basis data oracle kami pada 1 kueri yang kami ketahui sejauh ini.
Saya akan memberikan uraian tentang apa yang terjadi namun sebenarnya tidak terlalu banyak berhubungan dengan pertanyaan saya tetapi saya terbuka untuk saran.
Sebentar tidak tahu kapan itu akan terjadi, telah terjadi 4 kali selama sebulan terakhir, seorang pengguna, akan mengklik sesuatu di dalam aplikasi. Apa yang diklik pengguna masih belum diketahui. Ketika apa pun yang diklik itu akan menjalankan kueri pada database yang akan menghasilkan sekitar 700k Baris.
Saya telah memeriksa tabel bahwa query sedang dijalankan dan indeksnya terlihat bagus.
Basis datanya 60GB ada 32GB di server.
Dari log pada server database saya melihat I / O tinggi tetapi CPU dan RAM tetap sama.
Salah satu server aplikasi, CPU naik hingga sekitar 75%. Saya dapat menemukan proses pekerja, menemukan PID, namun ketika saya membunuh PID yang terkait dengan proses pekerja, CPU akan turun sebentar dan kemudian naik kembali.
Juga mendaur ulang kumpulan aplikasi, dan memulai ulang IIS melakukan hal yang sama, CPU akan turun sebentar dan kemudian kembali lagi.
Satu-satunya hal yang dapat dilakukan untuk mendapatkan server kembali sejalan adalah restart.
Jadi saran saya JIKA pertanyaan ini adalah apa yang menyebabkan penguncian dapat meningkatkan memori pada kotak untuk memungkinkan database untuk di-cache dan kehabisan memori. Saya mendengar ini sekali tetapi saya tidak yakin apakah itu benar.
Penyimpanan adalah HP PAR 3 dengan 3 tingkatan dan basis data cukup banyak berada di tingkatan SSD.
SSD atau Memori yang lebih cepat