मेरे पास क्लाइंट पॉइंट ऑफ़ सेल (POS) सिस्टम है, जो समय-समय पर नए बिक्री डेटा को एक केंद्रीकृत डेटाबेस में भेजता है, जो रिपोर्ट जनरेशन के लिए डेटा को एक बड़े डेटाबेस में संग्रहीत करता है।
क्लाइंट पीओएस PHPPOS पर आधारित है, और मैंने एक मॉड्यूल लागू किया है जो सेवा के लिए बिक्री डेटा भेजने के लिए मानक XML-RPC लाइब्रेरी का उपयोग करता है। सर्वर सिस्टम CodeIgniter पर बनाया गया है, और webservice घटक के लिए XML-RPC और XML-RPCS पुस्तकालयों का उपयोग करता है। जब भी मैं बहुत अधिक बिक्री डेटा (बिक्री तालिका से 50 पंक्तियाँ, और बिक्री के भीतर प्रत्येक आइटम से संबंधित व्यक्तिगत पंक्तियों से बहुत कम पंक्तियाँ भेजता हूँ) तो मुझे निम्न त्रुटि मिलती है:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 54 bytes)
128M डिफ़ॉल्ट मान है php.ini
, लेकिन मुझे लगता है कि तोड़ने के लिए एक बड़ी संख्या है। वास्तव में, मैंने इस मान को 1024M पर सेट करने की भी कोशिश की है, और यह सब करने में त्रुटि के लिए अधिक समय लगता है।
मेरे द्वारा उठाए गए कदमों के लिए, मैंने सर्वर-साइड पर सभी प्रसंस्करण को अक्षम करने का प्रयास किया है, और इनपुट की परवाह किए बिना डिब्बाबंद प्रतिक्रिया को वापस करने के लिए इसे कठोर किया है। हालाँकि, मेरा मानना है कि समस्या डेटा के वास्तविक भेजने में निहित है। मैंने PHP के लिए अधिकतम स्क्रिप्ट निष्पादन समय को अक्षम करने का भी प्रयास किया है, और यह अभी भी त्रुटी है।