PHP Fatal error: Out of memory (allocated ) (tried to allocate bytes) на VPS

277
02 июля 2017, 16:00

Всем добрый вечер, довольно глупый вопрос, но уже начинаю сходить с ума (знаю, что тема, возможно, дубликат, но решения так и не нашел). Есть VPS. Debian 9 x32, Maria DB, Nginx, php-fpm7.0

Память RAM: 2048 Мб 
Память SSD: 40000 Мб
CPU:    2x2.8 Ghz 

Серв абсолютно чистый, сегодня утром купил, нагрузки никакой. Залил на него новый сайт (Opencart 2.1 с шаблоном и набором модулей). Сайт только с разработки, т.е никаких "костылей" и "велосипедов" на нем нет. Модули все покупные и минимальный набор. И при запуске сего чуда вылезает ошибка

mmap() failed: [12] Cannot allocate memory
PHP Fatal error:  Out of memory (allocated 1826619392) (tried to allocate 262144 bytes) in /home/tytmodno/tm-shop/system/library/db/mysqli.php on line 7

Ошибка не новая и всем известно что лечится она увеличением memory_limit. Увеличил параметр до 512М я получил такой ответ

PHP Fatal error:  Allowed memory size of 536870912 bytes exhausted (tried to allocate 262144 bytes) in /home/tytmodno/tm-shop/system/library/db/mysqli.php on line 7

Ну и для верности эффекта я задал memory_limit = -1 и получил то же самое

mmap() failed: [12] Cannot allocate memory
PHP Fatal error:  Out of memory (allocated 1824522240) (tried to allocate 262144 bytes) in /home/tytmodno/tm-shop/system/library/db/mysqli.php on line 7

Подскажите, пожалуйста, в чем проблема

Answer 1

1824522240 байт = 1781760 кб = 1740 мб Нет у вас столько памяти на вашей VPS.

Идите в код с профилировщиком и ищите, на какие такие надобности скрипт хочет 2гб памяти сожрать при обработке одного (!) запроса.

Answer 2

Не знаю, может поможет кому с подобной проблемой. Решил установкой в конфиге подключением через pdo а не mysqli. После этого сайту хватило memory_limit = 256M

READ ALSO
Асихронное выполнение функции

Асихронное выполнение функции

На сайте после создания заказа клиент переходит на страницу, где ему откликаются боты через рандомные промежутки времени(чтобы выполнить...

253
Рекурсивные зависимости

Рекурсивные зависимости

Вопрос: как можно решить данную зависимость чтобы в результате выполнения было только 2 объекта без промежуточных или по другому чтобы в стеке...

210
вывод кириллицы в php через cron

вывод кириллицы в php через cron

Есть php файл, в нем прописано:

182