ฉันโชคดีพอที่เว็บไซต์ของฉันแพร่ระบาด และแน่นอนว่าเซิร์ฟเวอร์ไม่พร้อมสำหรับมัน
น่าเสียดายที่การตั้งค่าของฉันค่อนข้างแย่ เซิร์ฟเวอร์เดียวที่มี Apache, PHP (Laravel), Mongodb และ redis
แบ็กเอนด์ (laravel) ส่วนใหญ่ให้บริการ REST API ขณะนี้ฉันมีผู้ใช้พร้อมกันมากกว่า 1,000 รายที่พยายามใช้เว็บไซต์ และทุกอย่างโหลดช้ามาก
MongoDB ดูเหมือนว่าจะทำงานได้ดี เนื่องจากฉันสามารถเข้าถึงได้ผ่านเทอร์มินัลและการสืบค้นจะได้รับการแก้ไขในทันที สิ่งที่ฉันกังวลคือการกำหนดค่า Apache/PHP FPM
เซิร์ฟเวอร์ของฉัน: 8 คอร์, 16GB RAM
ฉันพยายามเล่นกับการกำหนดค่า PHP FPM แต่ก็ไม่ได้ปรับปรุงมากนัก สำหรับตอนนี้ฉันมีมันอยู่ คงที่
กับ 300 max_children
.
ใน Apache ฉันใช้เหตุการณ์ MPM กับการกำหนดค่านี้:
<IfModule mpm_event_module>
ServerLimit 40
StartServers 2
MinSpareThreads 50
MaxSpareThreads 100
ThreadLimit 64
ThreadsPerChild 50
MaxRequestWorkers 1000
MaxConnectionsPerChild 0
</IfModule>
โดยใช้ สูงสุด
ฉันมีสิ่งนี้ซึ่งดูดีสำหรับฉัน:
ใครสามารถชี้ฉันไปในทิศทางที่ถูกต้อง?