ฉันโต้เถียงกับ DBA และพวกฮาร์ดแวร์สองคนเกี่ยวกับปัญหาด้านประสิทธิภาพบนเซิร์ฟเวอร์ SQL ของเรา โดยทั่วไปทุกอย่างเรียบร้อยดี แต่ในช่วงสองสามสัปดาห์ที่ผ่านมาเรามี spikes ล่าช้ามากในเซิร์ฟเวอร์ sql มันชัดเจนว่า SQL Server กำลังรอบนดิสก์ I / O แต่ฉันได้รับการบอกว่าเป็นเพราะ SQL Server จะขอ I / O สูงผิดปกติ ซึ่งไม่ใช่กรณี ฉันสามารถดูได้จากสิ่งที่กำลังทำงานอยู่ซึ่งไม่มีอะไรผิดปกติและ DBA ทุกคนใส่ใจที่จะดูว่าอะไรเป็นสาเหตุของการบล็อกและอื่น ๆ ซึ่งไม่มีประโยชน์ ตัวอย่างเช่นสิ่งสำคัญที่เราเห็นการสำรองข้อมูลคือการทำงานบนฐานข้อมูล ASPState ซึ่งเราใช้เพื่อจัดการสถานะเซสชัน ASP บนเว็บเซิร์ฟเวอร์ ปกติการดำเนินการเหล่านี้จะไม่เคยเห็นในผลลัพธ์ที่ใช้งาน Sp_who2 เนื่องจากเกิดขึ้นอย่างรวดเร็ว ฐานข้อมูลอยู่ในโหมดการกู้คืนอย่างง่ายและการบันทึกเป็นสิ่งผิดปกติ อย่างไรก็ตามในระหว่างความล่าช้าเหล่านี้เราสามารถเห็นการเลือกมากและปรับปรุงการดำเนินงานในฐานข้อมูลที่ถูกบล็อกหรือรอ ฉันแน่ใจว่าสิ่งที่เกิดขึ้นคือบางคนหรืองานบางอย่างกำลังทำงานบางอย่างที่ก่อให้เกิดการใช้งานดิสก์อย่างหนักหน่วงในอาร์เรย์การโจมตีที่ใช้สำหรับบันทึกฐานข้อมูลและไฟล์ข้อมูล ปัญหาคือการพิสูจน์เพราะไม่มีใครต้องการที่จะยอมรับว่าพวกเขากำลังทำสิ่งที่กำลังฆ่าเว็บไซต์ของเรา
คำถามของฉันคือตัวนับประสิทธิภาพหรือสิ่งใดที่ฉันสามารถบันทึกได้ซึ่งจะช่วยแสดงว่าเซิร์ฟเวอร์ SQL กำลังรอ I / O แต่ไม่ใช่เพราะการขอมากกว่าปกติ แต่แทนที่จะเป็นดิสก์เพราะยุ่งอยู่กับการตอบสนองคำขอจากเซิร์ฟเวอร์ sql เร็วเท่าที่ปกติจะ?