เรามีเซิร์ฟเวอร์ประมาณ 200, Hyper V, File Cluster และ IIS ที่ทั้งหมดกำลังประสบปัญหาเดียวกันเหตุการณ์เกิดขึ้นบนเซิร์ฟเวอร์ผ่านการใช้งานปกติที่สูงสุดหรือใกล้ถึง RAM บนเซิร์ฟเวอร์ เมื่อสิ่งนี้เกิดขึ้นบริการ SVCHOST / เวิร์กสเตชันโดยเฉพาะ (ตัดออกโดยการแยกบริการเวิร์กสเตชันเป็น SVCHOST ของตัวเอง) จะหยุดการปล่อยจับ / เธรดและหน่วยความจำที่ใช้โดยบริการนั้นจะไม่ถูกปล่อยออกมา ในบางกรณีเรามีบริการเวิร์กสเตชันที่ใช้ RAM มากถึง 40GB บนเซิร์ฟเวอร์ 255GB นอกจากนี้ยังพบว่ามีมากกว่า 40 ล้านด้ามในบางกรณี
ในการรีบูตปัญหาของหลักสูตรจะหายไปและจะไม่ปรากฏขึ้นอีกจนกว่าหน่วยความจำทั้งหมดจะถูกใช้งานโดยกระบวนการ W3 หรือ HyperV VM หลังจากนั้นบริการเวิร์กสเตชันก็เริ่มคว้า RAM ทั้งหมด กระบวนการนี้ช้ามากและอาจใช้เวลาสัปดาห์ / เดือนขึ้นอยู่กับปริมาณของ RAM บนเซิร์ฟเวอร์
ทั้งเซิร์ฟเวอร์ Hyper V และเซิร์ฟเวอร์ IIS ของเราเข้าถึงการแชร์สำหรับไฟล์ทำงานส่วนแบ่งเหล่านี้อยู่ในที่จัดเก็บข้อมูล SSD ดังนั้นจึงมีประสิทธิภาพมากมาย เราได้ติดตั้งแพตช์ปัจจุบันทั้งหมดแล้ว แต่ไม่ได้ย้ายไปยัง R2 เนื่องจากเรามีเครื่องมือมากมายที่จะทำให้ขั้นตอนนี้มีความสำคัญและไม่สามารถหาข้อบ่งชี้ที่ชัดเจนว่าสิ่งนี้จะได้รับการแก้ไขใน R2
เราได้เรียกใช้ ProcMon และเครื่องมืออื่น ๆ แต่บนเซิร์ฟเวอร์ที่มีปัญหามากที่สุดเครื่องมือเหล่านั้นจะไม่แม้แต่จะทำงาน ในส่วนอื่น ๆ ผลลัพธ์ที่พวกเขาให้ก็แสดงให้เห็นว่าดูเหมือนว่ามีหน่วยความจำรั่วในกระบวนการนั้น
มีวิธีที่เราสามารถเพิ่มหน่วยความจำจากกระบวนการนี้หรือหลีกเลี่ยงข้อผิดพลาดทั้งหมดเข้าด้วยกัน? เราไม่ต้องการรีบูตและเราไม่สามารถรีสตาร์ทกระบวนการได้เมื่ออยู่ในสถานะข้อผิดพลาด กระบวนการนี้กลายเป็นน้ำแข็ง
เราพยายามหลีกเลี่ยงการรีบูตปกติเพื่อ 'แก้ไข' ปัญหานี้ดังนั้นคำตอบใด ๆ จะได้รับการชื่นชม