我有一堆客户销售点 (POS) 系统,它们定期将新的销售数据发送到一个中央数据库,该数据库将数据存储到一个大数据库中以生成报告。
客户端 POS 基于 PHPPOS,并且我已经实现了一个使用标准 XML-RPC 库将销售数据发送到服务的模块。服务器系统建立在 CodeIgniter 之上,并使用 XML-RPC 和 XML-RPCS 库作为 Web 服务组件。每当我发送大量销售数据(销售表中少至 50 行,以及与销售中的每个项目相关的 sales_items 中的各个行)时,我都会收到以下错误:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 54 bytes)
128M 是 中的默认值php.ini
,但我认为这是一个很大的数字。事实上,我什至尝试过将此值设置为 1024M,但它所做的只是需要更长的时间才能出错。
至于我采取的步骤,我尝试禁用服务器端的所有处理,并操纵它以返回预设响应,无论输入如何。但是,我认为问题在于数据的实际发送。我什至尝试禁用 PHP 的最大脚本执行时间,但它仍然出错。