ทำไมเราถึงได้รับขัดขวางอย่างฉับพลันในเวลาตอบสนอง
เรามี API ที่ใช้งานผ่าน ServiceStack ซึ่งโฮสต์ใน IIS ในขณะที่ทำการทดสอบการโหลดของ API เราพบว่าเวลาตอบสนองนั้นดี แต่ก็ลดลงอย่างรวดเร็วทันทีที่เรามีผู้ใช้งานพร้อมกันประมาณ 3,500 คนต่อเซิร์ฟเวอร์ เรามีเซิร์ฟเวอร์สองเครื่องและเมื่อมีผู้ใช้ถึง 7,000 คนเวลาตอบสนองโดยเฉลี่ยอยู่ต่ำกว่า 500ms สำหรับอุปกรณ์ปลายทาง กล่องเหล่านี้อยู่ด้านหลัง load balancer เราจึงได้รับ 3,500 concurrents ต่อเซิร์ฟเวอร์ อย่างไรก็ตามทันทีที่เราเพิ่มจำนวนผู้ใช้พร้อมกันทั้งหมดเราจะเห็นเวลาตอบสนองที่เพิ่มขึ้นอย่างมีนัยสำคัญ การเพิ่มผู้ใช้พร้อมกันถึง 5,000 ต่อเซิร์ฟเวอร์ทำให้เรามีเวลาตอบสนองโดยเฉลี่ยต่อปลายทางประมาณ 7 วินาที หน่วยความจำและ CPU บนเซิร์ฟเวอร์ค่อนข้างต่ำทั้งในขณะที่เวลาตอบสนองที่ดีและเมื่อพวกเขาเสื่อมสภาพ ที่สูงสุดด้วยผู้ใช้ 10,000 คนพร้อมกันค่าเฉลี่ยของ CPU เพียงแค่ต่ำกว่า 50% และ RAM อยู่ที่ประมาณ 3-4 GB จาก 16 สิ่งนี้ทำให้เราคิดว่าเรากำลัง จำกัด ขอบเขตบางแห่ง ภาพหน้าจอด้านล่างแสดงตัวนับหลักใน …