ทดสอบเว็บ

20 views
Skip to first unread message

Wason

unread,
Sep 22, 2010, 1:13:31 PM9/22/10
to blog...@googlegroups.com
ผมพบว่าเว็บตอนนี้ยังไม่มีเสถียรภาพเป็นช่วงๆ นะครับ
เลยกลับมาทำตรงนี้กับ lancaster กันต่อ

1. เราปิด feed ทั้งหมดเหลือ feed กลางอย่างเดียว
2. ผมเปิด cron กลับมา ถ้าใครสังเกตจะเห็นว่า partner นั้นไม่อัพเดตมาหลายวันแล้ว

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

--
lewcpe

Ton-Or

unread,
Sep 23, 2010, 12:21:04 PM9/23/10
to Blognone
พอจะบอกได้ไหมครับ เผื่อพอมีอะไรจะช่วยได้บ้าง

เท่าที่ทราบ blognone มีการนำ squid มาใช้ช่วยลดภาระ การทำงานของ apache
ข้อเสนอแนะ (ส่วนตัวนะครับ)
ผมไม่มั่นใจว่า การ optimise apache+mysql และใช้งาน cache
อย่างเต็มทีไปเลย(ตั้ง memcache ไว้เยอะๆ) กับการนำ squid
เข้ามาช่วยลดอย่างไหนจะดีกว่ากัน กรณี ที่เป็นเครื่องเดียวกัน
solution นี้ ถ้าเป็น server สองตัวแน่นอน การนำ squid
เข้ามาย่อมเป็นสิ่งที่ดีกว่า แต่กรณี squid และ apache
อยู่เครื่องเดียวกัน load apache ลดลงก็จริง แต่กลับมี load ของ squid
เพิ่มขึ้น memcache จะทำงานมีประสิทธิภาพแค่ไหน?

อันนี้ผมลองจินตนาการดูคร่าวๆ น่ะครับ ว่าเวลาเปิด web ที อะไรทำงานบ้าง

Apache (อ่านข้อมูลจาก HDD) ---> memcache (ข้อมูลอยู่ใน RAM) ---> squid
(RAM ส่วนเกินจาก RAM ที่ตั้งเขียนลง HDD) ---> Client
เขียนการเดินทางของข้อมูลได้สั้นๆ
HDD--->RAM--->RAM--->HDD--->Client (กรณี ข้อมูลถูก squid เขียนลง HDD
ไปแล้ว)
HDD--->RAM--->RAM--->Client (กรณี ข้อมูลที่ squid จับไว้ยังอยู่ใน RAM)

กับ optimise apache+mysql และใช้งาน cache
Apache (อ่านข้อมูลจาก HDD) ---> memcache (ข้อมูลอยู่ใน RAM) --->client
HDD--->RAM--->Client

ผมต้องออกตัวก่อนว่าผมไม่เคยใช้ระบบ squid และ apache
เครื่องเดียวกันเลยไม่มีข้อมูลด้านเทคนิคอะไรมาเทียบนะครับ

ส่วนเรื่อง อาการแปลกๆ ของ blognone เองก่อนย้ายออกมาจาก cyberbeing นั้น
ผมเข้าใจว่าเป็นที่ theme หรือเปล่า หรือ
หากมีติดตั้งอะไรเพิ่มไปในช่วงนั้น เพราะก่อนหน้านั้นไม่พบปัญหา
เหมือนที่กำลังเป็นอยู่ เช่นพวก กดอ่านไปแล้วยัง ขึ้นว่า new ทั้งหมดอยู่
ตอนแรกเราก็ไม่มั่นใจว่า เป็นที่ host เรา หรือ เป็นที่ blognone
จนย้ายออกแล้วยังเห็นว่าเป็นอยู่นี่หล่ะครับ
เลยมั่นใจแล้วว่าไม่ได้เกี่ยวกับเรา ประกอบกับ hdd
เริ่มรวนในช่วงนั้นเลยไม่กล้าฟันธง ว่าเป็นที่ไหนกันแน่

แต่ส่วนเรื่องที่ mysql ดับบ่อยๆ นั้น กระซิบแล้วกันนะครับว่า เป็นเพราะ
scripts backup db ของเราเองที่ลืมเอาออก หลังจากย้ายเครื่อง - -' เพราะ
mysql ของเรา หลังจากย้ายเครื่องได้ optimise ไว้ค่อนข้างเยอะมาก พอ run
scripts backup ตัวเก่าเลยทำ service ดับ
เป็นความผิดพลาดที่ไม่น่าให้อภัยของเราเลยจริงๆ

สุดท้ายก็ยังคงเป็นกำลังใจ และรอดูความเติบโตของ blognone ต่อไปครับ

Wason

unread,
Sep 23, 2010, 2:13:40 PM9/23/10
to blog...@googlegroups.com
ขอบคุณมากๆ ครับ (Writer Party
รอบหน้านี่ขอเชิญล่วงหน้าทั้งอาจารย์และคุณ Ton-Or ด้วยเลยนะครับ)

ผมพบว่าปัญหาตอนนี้อยู่ที่ตัว Apache ที่ไปแย่งแรมกับ Mysql ครับ
ในบางกรณีที่เกิด peak load ทำให้ memory ไม่พอให้ mysql กลายเป็น
positive feedback เพราะ apache เองก็เพิ่ม thread มารับ connection
ไปกันใหญ่

peak load ที่เกิดขึ้นตอนนี้พบว่าเป็นที่ atom.xml ครับ
อาจจะเพราะหลายคนเขียนโปรแกรมเข้ามาดูด แล้วยิงเวลาเลขลงตัวเหมือนๆ
กันเช่น 8.00 8.30 ....

เบื้องต้น ผมพยายาม gen atom.xml ทุก 15 นาที เพื่อลด load ในส่วนนี้ลงไป
โดยบังคับว่าห้าม user เข้ามา trigger การสร้าง xml เองอีกต่อไป
ดังนั้นแม้จะ login อยู่ ก็จะได้ static file ที่ delay สักหน่อย

เรื่องต่อไปคือการ tune RAM ที่เราต้องหาสมดุลระหว่างจำนวน thread ของ
apache และ connection ของ mysql
ให้พอดีกันโดยไม่กินแรมเครื่องจนหมดเหมือนตอนนี้อีกครับ

ขอบคุณครับ สำหรับคำแนะนำ
ถ้ัามีคำแนะนำอื่นเดี๋ยวจะนำไปใช้ให้เร็วที่สุดครับ
(ผมเองบางทีหมดมุกเอาเหมือนกัน

2010/9/23 Ton-Or <cto...@gmail.com>:

> --
> To unsubscribe from this group, send email to blognone-u...@googlegroups.com
> For more options, visit this group at http://groups.google.com/group/blognone?hl=en

--
lewcpe

Ton-Or

unread,
Sep 23, 2010, 2:15:49 PM9/23/10
to Blognone
อ้อ พอดีผมนึกขึ้นมาได้ว่าร้าน Internet ลูกค้าผมบางร้านที่ ram เยอะๆ
ผมจะจับ ram มาทำ เป็น ram disk แล้วตั้ง squid ไปเขียนในนั้นแทน
ผลที่ได้เร็วว่าอ่าน จาก HDD มากแต่ต้องแลกกับขนาดพื้นที่ squid cache
ที่เล็กลง แต่ผลที่ออกมาก็น่าประทับใจอยู่ครับ

Ton-Or

unread,
Sep 23, 2010, 2:25:52 PM9/23/10
to Blognone
อ้อ เรื่อง program ดูดต่างๆ ช่วงที่ อยู่กับเรา blogonoe จะมีปัญหา
load สูง เพราะเรื่องนี้มาตลอดครับ
จะบอกว่าเรา block เลยในช่วงเวลา peak สำหรับ ip ที่สร้างปัญหา บ่อยๆ
แล้วปล่อยเวลาอื่นเอาครับ
ส่วนใหญ่จะเป็น ip proxy ของมหาลัยต่างๆ นั่นหล่ะครับ

Ton-Or

unread,
Sep 23, 2010, 2:52:45 PM9/23/10
to Blognone
ออกตัวไว้ก่อนว่าเราไม่ได้ใจร้ายนะครับที่ block ip ที่สร้างปัญหา
เพราะหลายครั้งที่ monitor program
ดูดที่ใช้กัน(ผมไม่ทราบว่าใช้อะไรกันบ้าง) จะดูดไปทั้งหมด
เคยเจอบ่อยๆที่ดูด ไปทั้ง web เลย ข่าวปีที่แล้วก็เอาไป

อีกอย่าง blognone จะมีแขกมาจากจีนเสมอๆ (ส่วนตัวผมชอบ product
จากจีนนะ :) แต่เรื่อง hosting นี่เบื่อหน่ายเลยทีเดียว ip จีนนี่)
ทั้งทาง ssh ftp หากติดตั้ง log watch แนะนำให้นำ ip ที่ scan มา route
reject ให้หมดเสมอๆ ด้วย เพราะมาใหม่กันทุกอาทิตย์ครับ

แถม ให้ก่อนย้าย ip ล่าสุดที่เรา block จะเป็นชุดนี้ ครับ จริงๆ
มันเยอะกว่านี้ แต่ผมไม่ทราบว่า ลูกพี่ผมเก็บของเก่าไว้ไหนเหมือนกัน
เอามาจาก rc.local ของเรานะครับ แถม SSH bruteforce! ไปด้วย

#######################################
# Ban SSH bruteforce!
/sbin/iptables -N SSH_CHECK
/sbin/iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j
SSH_CHECK
/sbin/iptables -A SSH_CHECK -m recent --set --name SSH
/sbin/iptables -A SSH_CHECK -m recent --update --seconds 60 --hitcount
4 --name SSH -j DROP

# Route Reject

/sbin/route add -host 113.119.64.182 reject
/sbin/route add -host 58.62.253.171 reject

# Route Reject coz spam
/sbin/route add -host 213.5.71.12 reject
/sbin/route add -host 95.211.132.49 reject
#######################################

Wiennat Mongkulmann

unread,
Sep 23, 2010, 10:07:02 PM9/23/10
to blog...@googlegroups.com
กรณีแบบนี้ถ้าใช้ nginx+fcgi จะช่วยไหมครับ แต่ก็แลกกับความเหนื่อยในการตั้งค่า

Ton-Or

unread,
Sep 24, 2010, 11:00:14 AM9/24/10
to Blognone

nginx นี่ก็ดีครับ เพราะผมเองก็ใช้อยู่
ส่วน fcgi ผมไม่เคยเอามาใช้เหมือนกัน

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

> ...
>
> read more >>

Reply all
Reply to author
Forward
0 new messages