Глядя на файл, который вызвал фатальное исключение (dbo_mysql.php
), я предполагаю, что ваш вызов извлекает данные из базы данных.
Также, глядя на ограничение памяти, он показывает 134217728 байт, что128 МБ, поэтому я думаю, что независимо от того, что делает ваш вызов API, он пытается извлечь много данных, общая сумма которых превышает лимит, выделенный для сценария.
Например, если последний сценарий в стеке вызовов API должен был использовать 20MB
для своих нужд, а затем устает извлекать данные из БД стоимостью 115MB
, ваш сценарий будет пытаться выделить 135MB
, что уже на 7MB
больше лимита и, следовательно, вызывает Fatal Exception
.
Итак, я вижу несколько вещей, которые нужно проверить / сделать:
- То, что вы не извлекаете ненужные данные или, другими словами, извлекаете только то, что вам нужно.
- Если выесли вам действительно нужны все эти данные, то
- Либо увеличьте значение
memory_limit
под вашим php.ini
файлом
Con: Если ваши данные продолжают расти, возможно, вам придется обновлять этозначение для тОн только один сценарий и подвергает себя утечкам памяти или нехватке памяти. - Или я бы порекомендовал вам реализовать какую-то нумерацию страниц (которая позволит вам контролировать пределы памяти) и сделать ваше приложениеболее масштабируемый.