- เครดิต
- 0
- เพื่อน
- ทักทาย
- บล็อก
- อัลบั้ม
- โพสต์
- กระทู้
- แชร์
- สำคัญ
- สิทธิ์อ่าน
- 10
- จำนวนผู้ติดตาม
- จำนวนผู้กำลังติดตาม
- เพศ
- ไม่บอก
|
เมื่อมีคนเข้ามาเยอะ จะมีการ query ในส่วนของ
1. SELECT COUNT(*) FROM cdb_members WHERE regdate
2. SELECT s.sid, s.styleid, s.groupid='6' AS ipbanned, s.pageviews AS spageviews, s.lastolupdate, s.sec
3. SELECT p.*, mp.*, m.uid, m.famname, m.username AS username, m.groupid, m.adminid, m.regdate, m.lasta [อันนี้เป็นการ ก๊อบ~เซ็นเซอร์~ที่เรียกว่า Copying to tmp table]
เหล่านี้มันทำงานหนักมาก แม้นจะปิดปลักอินไปแล้วก็ตามแต่ ก็ยังทำให้เวปอืดมากมาย มันจะแก้ได้อย่างไรบ้างคับ
ปล. user online ประมาณ 300-500 นิดๆ สถิตินับหน่วงเวลา 10 นาที
ปล2. ถ้ายังรับทีมงานเพิ่ม pm บอกด้วยน่ะคับ ส่วน....สิ่งที่ผ่านมาก็ขอโทษทีมงานด้วย
===========================================================================================
ได้คำตอบมาแล้วคับ จากที่ ท่าน acaz ให้ลองเล่นเมนูที่บอก มันมีอยู่ว่า
Table(ตาราง) ที่ทำงานหนัก ก็คือ cdb_sessions เนื่องจากว่า
ไปตั้งค่าที่เมนู ตั้งค่า หน้ากระดานข่าว » Server optimization สนส่วนของหัวข้อ Maintain online time (minutes): โดย เก็บค่า userOnline ที่ผ่านมาเป็น10นาที
จึงเกิดเหตุการณ์ ทำให้ Database(ฐานข้อมูล) มีการใช้งานหนัก เพราะมีคนเข้าเยอะจัด จึงเกิดการ โพรเซสข้อมูลค้าง เป็นจำนวนมาก
ข้อสังเกตุตามความคิดผม คือ
1. เมื่อผม เคลียข้อมูลในส่วนของ Table(ตาราง) ที่ชื่อว่า cdb_sessions ออกจนหมดสิ้น โดยกำหนดหน่วงเวลา UserOnline เป็น 10นาที เวลาเข้าไปหน้าเวปใหม่ ตรง UserOnline จะหายพรวด เลยในพริบตา เนื่องจากไม่มีการเก็บข้อมูลไว้
2. เมื่อกำหนดการเก็บข้อมูล UserOnline จาก 10 นาที เป็น 5 นาที ทำให้ Database(ฐานข้อมูล) มีการโพรเซสน้อยลงมาก จากที่ค้าง เป็นคืบ เหลือเพียง 2-3บรรทัดเท่านั้นเอง
===========================================================================================
อีกปัญหา คือ 2. SELECT s.sid, s.styleid, s.groupid='6' AS ipbanned, s.pageviews AS spageviews, s.lastolupdate, s.sec
ก็คือว่า การตั้งค่า การโพสให้ใช้ระยะเวลาห่างกี่วินาที ตรงแถวๆเมนู ตั้งค่า หน้ากระดานข่าว » Server optimization อีกตามเคย หากเวปใครมีคนเยอะ แก้ปัญหาเฉพาะหน้าให้เวปอืดน้อยลงได้โดย ดูหัวข้อ Post Interval(Second): ในเมนู ตั้งค่า หน้ากระดานข่าว » Server optimization มันจะถามว่า กี่วินาที ถึงจะโพสได้
ตอนแรก ผมใส่ไป15 มันเลยอืด แต่ยังไม่รู้ แล้วลองมั่วๆ ดูใส่ไป60 วิ แล้วมาดูที่โพรเซสของ Database(ฐานข้อมูล) ตกใจเลยคับ มันค้างเป็นหน้าเลยทีนี้ จากนั้น ผมลองมาปรับเป็น 0 จากที่เคยตั้งไว้ 60
แล้วมาดูที่ โพรเซสของ Database(ฐานข้อมูล) ใหม่อีกรอบ ทำให้เห็นความแตกต่างเลยว่า ไม่มีกรทำงานที่ค้างเป็นหน้าๆ เหล่านั้นอีกแล้ว
นี้คือประสบการณ์โดยตรงนะคับ หากว่ามีอะไรผิดพลาด ก็ชี้แนะด้วย
ปล. บทความนี้เขียนสรุปมาในช่วงที่ทดสอบตอน userOnline 150 นิดๆ หากใครมีวิธีแนะนำ ทำให้ บอร์ดทำงานได้เร็วยิ่งขึ้น ที่แตกต่างจากของผม โปรดแนะนำด้วยน่ะค้าบ
~:9:~ ~:9:~
[ แก้ไขล่าสุด mschat เมื่อ 2008-6-10 03:33 ] |
|
|
|
|
|
|