เว็บอืดมากเลย แก้ไงดีครับ

เว็บผมอืดมากเลยครับ ขนาดหน้าเว็บที่เป็น html ธรรมดาๆ ก็ยังโหลดช้า

Apache Server Status เป็นแบบนี้

Total accesses: 4090443 - Total Traffic: 29.3 GB
CPU Usage: u1404.91 s726.09 cu0 cs0 - 3.31% CPU load
63.5 requests/sec - 477.0 kB/second - 7.5 kB/request
488 requests currently being processed, 13 idle workers
WCCRWWWW.WWWWWWWWWWRWWWWWWWWWWWW.WWWWCWW_WWWWWWWWCWWWWCCWWWWWWWW
WWWWWCWW_WWWW_WWWWCCWW_WWWRWWWWWWWWWWWWWWCWCWWWWWCWWRCWWWWRW_WWW
WWWCWWWWWWWWWWWWWCWWWWWRWRWWWWCWWWWWWW.WCWCWWW_WWWCWWWWWCWWWWWWC
WWWWWWWWC.WWWCCRWWWCWWRCWW_WRRWWWWWWWWWWRWWWWCWRCWWCWWRWWWWWCCW
CWWWCWWWWWCCWWWCWWCWWCWWWWWWWWWWWWWWCW__WWWWWWCCWWWCWWWWCCRWWWWW
WCWWCCWRWWWWWWWWWW.WWCCWWWWWWWW…WWWWC
.WWWWWWWWWCWWWRW.WCWWWWWW
WWWWWWWWWCWWWWWWWWW.RWWWWWCWWCC_WWCWWWCWWWWWWWCWWWWWWWWWWRCWWWWW
WWWCWWWWWWWWWWWWWCWWWWCWWWWWCWWWWCWWWWWWWWWCCWWWRCWWWR_WWC.WWWWW

Scoreboard Key:
"_" Waiting for Connection, “S” Starting up, “R” Reading Request,
“W” Sending Reply, “K” Keepalive (read), “D” DNS Lookup,
“C” Closing connection, “L” Logging, “G” Gracefully finishing,
“I” Idle cleanup of worker, “.” Open slot with no current process

ไม่ทราบเป็นเพราะอะไรเหรอครับ วานผู้รู้ช่วยชี้แนะหน่อยครับ

apache รับ request ไม่ทันครับ
อาจต้องปรับเพิ่ม max clients เอา

ผมสงสัียว่า cpu มันก็เท่าเดิม ทำงานได้ปริมาณเท่าเดิม
การเพิ่ม maxclient สูงๆ 1024 ตามที่นิยมทำกัน
มันจะช่วยได้จริงหรือ

ในความเห็นผมมันช่วยได้แค่รองรับปริมาณ connection ที่เพิ่มขึ้นในช่วงเวลาสั้นๆเท่านั้น
ค่าที่เหมาะสมต้องดูกำลังเครื่องว่ามันน่าจะรับได้ที่เท่าไหร่
หรืออะไรที่เป็นตัวถ่วง ก็ไป optimize ตรงจุดนั้น

max clients ตอนนี้ปรับเป็น พันกว่าๆ อยู่แล้วครับ
เครื่องผม สเป็คนี้ ไม่ทราบว่า น่าจะรับได้เท่าไหร่เหรอครับ

DELL 860
GenuineIntel, Intel® Xeon®CPU 3050 @ 2.13GHz
RAM 4 GB

แล้วอะไรที่เป็นตัวถ่วงนี่ เราดูได้จากอะไรเหรอครับ

ลองเพิ่ม maxclient ดูก่อนดีกว่าครับ
เท่าที่ดู cpu load นิดเดียวเอง น่าจะเพิ่มได้อีกเยอะ

CPU Usage: u1404.91 s726.09 cu0 cs0 - 3.31% CPU load

เวบเกี่ยวกับอะไรครับ ต้องดูตรงนั้นด้วย

ลองเพิ่ม maxclient ดูอีกรอบแล้วครับ ตอนนี้ cpu ขึ้นไปเป็น

CPU Usage: u487.34 s133.41 cu0 cs0 - 25.2% CPU load

ดูเร็วขึ้น แต่ก็ยังรู้สึกได้ว่าช้าอยู่ ซึ่งปกติก่อนหน้านี้ ใช้งานได้ปกติ ไม่ได้รู้สึกว่ามันช้าเลยครับ
เว็บผมเป็นเว็บวาไรตี้ ทั่วไป แต่จะมีพวกฝากรูปฟรีอยู่ด้วย ไม่รู้เกี่ยวกันป่าว
เราดูจากอะไรเหรอครับว่าส่วนไหนที่ทำให้เว็บเราช้าลง
คือผมเองไม่ค่อยมีความรู้ทางด้าน admin เท่าไหร่ ส่วนใหญ่จะเน้นไปทางพัฒนาเว็บไซต์มากกว่า
แต่พอทำๆเว็บไป แล้วเจอปัญหาพวกนี้บ่อยมาก เลยอยากรู้ เพื่อหาทางปรับแต่งเว็บให้มันโหลดเร็วขึ้นน่ะครับ
ขอคำชี้แนะด้วยครับ

ปรับ maxclients แล้วได้ปรับ serverlimit ตามด้วยมั้ยครับ

maxclients จะไม่มีทางมากกว่า serverlimit อะครับ

ปรับครับ ปรับ maxclients แล้วได้ปรับ serverlimit ตามด้วยแล้วครับ

ลองดู server status อีกรอบครับ
แล้วก็ดูด้วยว่ามัน process แฟ้มไหนอยู่ (ด้านล่าง ที่เป็นรายการยาวเป็นพรืดนั่นแหละครับ)

http req ไปยัง mysqld และ mysql ตอบสนองข้อมูลหลังจาก query กลับมาให้ http ไม่ทันหรือไม่พอหรือเปล่าครับ

เนื่องจาก “W” มากมายอย่างนี้… มีเรื่องเดี๋ยวคือ 1 connection per client ทำการ process นานจนเกินไป
ทำให้ Slot เต็ม

แบบนี้มันอาการทำงานไม่ทันกันครับ

วิเคราะห์การใช้งาน mysql ด้วย
วิเคราะห์การทำงานของ httpd ด้วยว่า…มัน process จบหนึ่ง process นานเกินไปไหม
ต้องทำให้ “W” น้อยที่สุด เพราะนั้นมันคือการ waiting รอรอ รอ รอข้อมูลอะไรสักอย่าง
เช็ค network switch ด้วยครับ

อืม เจอสาเหตุแล้วครับ ผมลองไปเช็คดูตรง server status อีกรอบ ตามที่คุณ iCeZ บอกว่ามัน process แฟ้มไหนอยู่
แล้วก็ได้เจอสาเหตุเหมือนที่คุณ devone วิเคราะห์ให้ คือ มัน process จบหนึ่ง process นานเกินไป
ผมลองไปแก้ดู ให้มันจบหนึ่ง process ให้เร็วขึ้น ผลปรากฎว่า กลับมาดีเหมือนเดิม แล้วครับ ไม่อืดแล้ว
ขอบคุณทุกท่านมากๆ ครับ ที่ช่วยชี้แนะ นำทางให้จนสามารถแก้ปัญหานี้ได้ ขอบคุณครับ :slight_smile: