ฉันพยายามให้บริการผู้ใช้พร้อมกันจำนวนมาก (3000+) บนเว็บไซต์ของฉัน
การตั้งค่าปัจจุบันของฉัน:
อูบุนตู 18.04
Apache 2.4 พร้อมเหตุการณ์ MPM และ PHP FPM
32 คอร์ แรม 192GB
การกำหนดค่าเหตุการณ์ MPM ปัจจุบัน:
<IfModule mpm_event_module>
StartServers 100
ServerLimit 4
MinSpareThreads 500
MaxSpareThreads 1500
MaxRequestWorkers 2000
ThreadsPerChild 500
ThreadLimit 500
MaxConnectionsPerChild 0
MaxKeepAliveRequests 1500
KeepAlive On
KeepAliveTimeout 10
</IfModule>
การกำหนดค่า PHP FMP:
pm = คงที่
pm.max_children = 3000
pm.max_requests = 10,000
กระบวนการหนึ่งใช้ RAM ประมาณ 40MB ดังนั้นจึงใช้เพียง 40GB จาก 192GB เท่านั้น
ฉันลองใช้ชุดค่าผสมต่างๆ แต่ฉันไม่สามารถเติม RAM เพื่อรองรับคำขอพร้อมกันมากกว่านี้
ในขณะนี้ดูเหมือนว่า CPU จะคอขวดทุกอย่าง มีการใช้งาน 100% และถ้าฉันเข้าสู่ระบบในเทอร์มินัล ฉันไม่สามารถเรียกใช้คำสั่งได้ ได้รับข้อผิดพลาดนี้
bash: fork: ลองใหม่: ทรัพยากรไม่พร้อมใช้งานชั่วคราว
ใครสามารถชี้ได้ว่ามีอะไรผิดปกติกับการกำหนดค่าของฉัน และการกำหนดค่าอื่น ๆ ที่ฉันควรสัมผัส?
โดยทั่วไปดูเหมือนว่าจะมีผู้ใช้ที่ใช้งานอยู่บนเว็บไซต์ระหว่าง 750 ถึง 900 รายช้าลง ดิสก์ I/O และแบนด์วิธดูดีและไม่โอเวอร์โหลด