Setiap proses non-SQL Server yang mengkonsumsi CPU dapat menyebabkan seluruh SQL Server benar-benar tidak dapat digunakan.
Sebagai contoh, Pembaruan Windows akan menghentikan SQL Server saat sedang membongkar rakitan .Net.
Setiap proses Anti-Virus, bahkan jika itu dikonfigurasi untuk mengecualikan file data dan folder SQL Server dapat menyebabkan SQL Server menjadi tidak responsif saat memindai file dan saat membongkar file definisi virus yang diperbarui.
Jika Anda memiliki perangkat lunak manajemen yang diinstal, seperti IBM Tivoli Server Monitor, dan ia memutuskan untuk menggunakan 100% dari satu inti, Anda mungkin tidak akan dapat melakukan apa pun selain mematikan mesin secara dingin. Jangan tanya kenapa saya membicarakannya.
Saya bisa melanjutkan, tetapi cukup untuk mengatakan, setiap server dengan satu inti hanya meminta masalah dengan kinerja dan pengelolaan. Periksa bahwa, komputer apa pun dengan satu inti harus dianggap tidak dapat digunakan hari ini. Heck, ponsel saya memiliki 8 core.
Sementara Anda melakukannya, yakinkan pria virtualisasi untuk memberikan setiap SQL Server reservasi memori yang wajar yang akan memastikan memori SQL Server tidak keluar dari memori utama host ke disk.
Untuk Server SQL serius yang di-host oleh VMware, Anda harus mengkonfigurasi VMware menurut panduan Architecting SQL Server di VMware Best Practices .
Itu benar-benar bermuara pada satu-core VM hanya dapat menjalankan satu utas pada waktu tertentu. Virtualisasi bukanlah peluru perak untuk situasi satu-inti-per-utas itu.
Poin-poin di atas memperhitungkan bahwa Windows NT (basis kode 1993 yang digunakan untuk semua versi Windows modern) menggunakan multi-tasking preemptive. Preemptive multi-tasking memungkinkan O / S untuk menegakkan multi-tasking dengan memaksa pengalihan konteks pada jadwal reguler. Bahkan dengan preemptive multi-tasking, server dengan satu inti akan tetap menderita dari kinerja yang sangat buruk jika satu tugas memutuskan untuk menggunakan CPU sebanyak mungkin, karena O / S akan memberikan tugas itu sebanyak waktu CPU yang dapat dihemat sementara masih memungkinkan tugas dengan prioritas lebih tinggi untuk dijalankan, memaksa CPU hingga 100%. Jika SQL Server berjalan pada saat CPU mencapai 100%, kuantum CPU SQL Server akan berkurang sehingga menjadi sangat terlihat. Dalam skenario di atas saya dijelaskan, aku tidakkatakanlah, mesin (atau bahkan SQL Server) akan sepenuhnya "berhenti" atau "mati"; itu tidak benar. Namun, mesin mungkin menjadi sangat sibuk sehingga untuk semua maksud dan tujuan mesin menjadi tidak dapat digunakan. Menambahkan inti kedua, walaupun tentu saja bukan obat mujarab, mengurangi kemungkinan bahwa mesin akan menjadi benar-benar tidak responsif. Setiap inti tambahan berarti utas lain dapat berjalan ke CPU 100% tanpa menyebabkan mesin menjadi tidak dapat digunakan.