ฉันมีระบบจุดขายลูกค้า (POS) มากมายที่ส่งข้อมูลการขายใหม่เป็นระยะ ๆ ไปยังฐานข้อมูลส่วนกลางหนึ่งฐานซึ่งจัดเก็บข้อมูลไว้ในฐานข้อมูลขนาดใหญ่หนึ่งฐานสำหรับการสร้างรายงาน
POS ของลูกค้าขึ้นอยู่กับ PHPPOS และฉันได้ติดตั้งโมดูลที่ใช้ไลบรารี XML-RPC มาตรฐานเพื่อส่งข้อมูลการขายไปยังบริการ ระบบเซิร์ฟเวอร์ถูกสร้างขึ้นบน CodeIgniter และใช้ไลบรารี XML-RPC และ XML-RPCS สำหรับคอมโพเนนต์เว็บเซอร์ เมื่อใดก็ตามที่ฉันส่งข้อมูลการขายจำนวนมาก (อย่างน้อย 50 แถวจากตารางการขายและแต่ละแถวจาก sales_items ที่เกี่ยวข้องกับแต่ละรายการภายในการขาย) ฉันได้รับข้อผิดพลาดดังต่อไปนี้:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 54 bytes)
128M เป็นค่าเริ่มต้นphp.ini
แต่ฉันคิดว่านั่นเป็นจำนวนมากที่จะทำลาย ในความเป็นจริงฉันได้ลองตั้งค่านี้เป็น 1024M และทั้งหมดใช้เวลานานในการผิดพลาด
สำหรับขั้นตอนที่ฉันทำฉันได้ลองปิดการใช้งานการประมวลผลทั้งหมดที่ฝั่งเซิร์ฟเวอร์และได้ทำการทดสอบเพื่อส่งคืนการตอบกลับสำเร็จรูปโดยไม่คำนึงถึงอินพุต อย่างไรก็ตามฉันเชื่อว่าปัญหาอยู่ที่การส่งข้อมูลจริง ฉันได้ลองปิดการใช้งานสคริปต์เวลาสูงสุดสำหรับ PHP และยังคงมีข้อผิดพลาดอยู่