0004 | PHP Memory Limit
Saturday, May 3rd, 2008 Posted in PHP Coding | No Comments »Fatal error: Allowed memory size of 262144 bytes exhausted (tried to allocate 4864 bytes) in /path/to/script.php on line 1074 ข้อผิดพลาดนี้ (อันที่จริงก็ทุกอัน) คนทำเว็บคนไหนก็คงไม่ชอบให้มันขึ้นมาหรอกจริงมั้ยครับ วันนี้จะมาอธิบายการทำงานของ memory limit นิดนึง... การที่ error อันนี้ขึ้นมาเนี่ย มันกำลังพยายามบอกว่า ก่อนหน้านี้ มีการขอใช้หน่วยความจำไปแล้วจนเกือบเต็ม 262144 byte (คือเหลือหน่วยความจำว่างๆ อีกไม่เยอะ) แล้วมีการขอใช้เพิ่มอีก 4864 byte แต่พื้นที่หน่วยความจำที่เหลืออยู่ (ตามที่อนุญาตไว้) มีไม่พอให้ใช้ มันก็เลยต้องจบการทำงานลง เพราะหน่วยความจำหมด นี่แหละครับคือหน้าที่ของ memory limit ตัว ...
Tags: memory, optimize, PHP Coding
0003 | รับมือเว็บ 250 req/sec
Saturday, May 3rd, 2008 Posted in PHP Coding, Web Server | 1 Comment »จากหน้าที่แล้ว ที่เราคุยกันถึงเรื่อง DNS Round Robin สาเหตุที่ต้องใช้ DNS Round Robin มันก็เนื่องมาจากเจ้านี่แหละครับ * ข้อมูลสถิติ การเข้าใช้งานเว็บ ในวันที่ 2 พฤษภาคม 2551 นี่เฉพาะหน้าเว็บนะ ยังไม่รวม announce process อีกวินาทีละกว่า 100 ครั้ง ซึ่งไม่สามารถเก็บสถิติได้ เพราะตัวสถิติจะล่มไปซะก่อน และคนที่เข้าผ่าน URL สำรอง ซึ่งระบบเก็บสถิติไม่ยอมเก็บอีกไม่รู้กี่ครั้ง เมื่อเจอเหตุการณ์แบบนี้ขึ้น ก็เลยต้องปรับระบบกันทุกทางเลยครับ ล่าสุดที่เพิ่งปรับ สืบเนื่องมาจากมีคนมาทักใน MSN ว่า ก็เลยนึกขึ้นมาได้ว่า ไอ้เว็บนี้เราเล่นเปิด gzip compression ไว้ทั้งเว็บเลยนี่หว่า ปกติถ้าเว็บมีคนเข้าใช้งานไม่เยอะมันก็ไม่น่าจะมีปัญหาอะไรหรอกครับ แค่ว่า CPU มัน process ไม่ทัน ช่วง Peak ทีนึง ...
Tags: gzip, optimize, PHP Coding
