У меня есть несколько систем 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, и он все еще выдает ошибки.