หลังจากเกาหัวของฉันพยายามคิดออกว่าทำไมเว็บไซต์ของฉันตอบสนองช้ามากแม้ว่าทรัพยากรเซิร์ฟเวอร์จะดีฉันก็ตรวจสอบสถานะ Apache และพบว่า:
78 requests/sec - 0.7 MB/second - 8.5 kB/request
256 requests currently being processed, 0 idle workers
ดูเหมือนว่าอาปาเช่ของฉันจะเต็มไปด้วยการเชื่อมต่ออย่างแท้จริง ใครก็ตามที่พยายามเข้าชมเว็บไซต์ของฉันจะได้รับ "รายการรอ" จนกว่า Apache จะให้บริการฟรีอีกครั้ง
ดูเหมือนว่าฉันมีสองตัวเลือก
A) เพิ่มขีด จำกัด การเชื่อมต่อสูงสุดที่สูงกว่า 256 ถึงแม้ว่าตามบทความนี้มันไม่ง่ายเลย:
โดยค่าเริ่มต้นพารามิเตอร์ MaxClients มีการรวบรวมในขีด จำกัด ที่ยากของ 256 ซึ่งสามารถเปลี่ยนแปลงได้โดยการคอมไพล์ Apache ใหม่ การแจกแจงบางส่วนหรือ บริษัท โฮสติ้งเพิ่มขีด จำกัด นี้เป็นค่าที่สูงมากเช่น 512 หรือ 1024 เพื่อรองรับการโหลดจำนวนมาก
B) ค้นหาสคริปต์ที่ใช้เวลามากเกินไป ดูเหมือนว่าจะยุ่งยากสำหรับฉันมากขึ้นเนื่องจากกระบวนการ apache ส่วนใหญ่จะปรากฏขึ้นและหายไปอีกครั้ง นอกจากนี้สคริปต์ของเว็บไซต์ PHP ของฉันได้รับการปรับให้เหมาะสมเช่นกัน ... และอีกครั้งทรัพยากรของเซิร์ฟเวอร์นั้นใช้ได้:
Server load 2.69 (8 CPUs)
Memory Used 25.33% (2,039,108 of 8,048,804)
Swap Used 1.32% (54,156 of 4,095,992)
ฉันควรเลือกตัวเลือกใด (ถ้ามีตัวใดตัวหนึ่ง) และฉันควรทำอย่างไร
แก้ไข
ข้อมูลเพิ่มเติม: รุ่นเซิร์ฟเวอร์: Apache / 2.2.23 (Unix) mod_ssl / 2.2.23 OpenSSL / 1.0.0-fips DAV / 2 mod_auth_passthrough / 2.1 mod_bwlimited / 1.4 FrontPage / 5.0.2.2635
HTTP Conf: http://pastebin.com/yBeLt6mP
ตัวอย่างคำขอ Parital: http://pastebin.com/vzUVDMPR
สลับการตัดข้อความถ้าการวางแปะแสดงว่าแปลก