переполнение памяти php multi curl - PullRequest
1 голос
/ 24 октября 2010

У меня есть подпрограмма PHP, которую я вызываю shell_exec, чтобы просмотреть свой собственный веб-сайт и создать индекс.

Однако, поскольку я делаю это многопоточным, у меня возникают проблемы с памятью ... серверная память увеличивается до 250 МБ, а затем обратно до 100 МБ случайным образом.

В течение этого времени я постоянно обращаюсь к базе данных mysql; и php замедляется.

Это возможно с помощью php или я должен использовать jsp / java.

1 Ответ

1 голос
/ 02 ноября 2010

PHP использует подсчет ссылок для управления памятью.Пока существует объявленная переменная (может быть массивом или глобальной), которая может использоваться для доступа к этой переменной, она никогда не освобождается.

Решение состоит в том, чтобы вызвать unset() для всего, что уже использовалось.Чтобы использовать его гораздо меньше памяти, части индекса, которые были созданы, должны храниться в базе данных SQL.Это позволяет сбрасывать гораздо больше данных.

Короче говоря, это можно сделать в PHP или JSP и использовать гораздо меньше памяти при использовании базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...