Сайту Drupal требуется более высокий лимит памяти после миграции? Почему?

#php #linux #apache #drupal

#php #linux #apache #drupal

Вопрос:

У нас есть веб-сайт, у которого предыдущий лимит памяти составлял 12 МБ (12 МБ в php.ini и 16 МБ в settings.php ) и работал ранее.

После перехода на новый сервер он начал выдавать ошибки ограничения памяти и отображать полупустой экран.

Мы увеличили лимит в обоих файлах (php.ini и settings.php ) и теперь это работает, но я не понимаю, как это возможно, что теперь ему требуется значительно больший объем памяти (раньше он работал с 12 МБ, теперь он продолжает работать с менее чем 20 МБ).

Комментарии:

1. Те же версии PHP? Установлены те же модули?

2. Пожалуйста, добавьте версии Apache и PHP старого и нового серверов. Был ли memcache или что-то подобное на старом сервере?

3. Может быть, вы перешли с 32-разрядной операционной системы на 64-разрядную?

4. @edwin: да, я думаю, что, вероятно, это так, я не уверен, был ли старый сервер 32- или 64-разрядным, но новый определенно 64-разрядный

Ответ №1:

Я предполагаю, что вы не меняли ОС в процессе. Переход с Windows на Linux или наоборот, скорее всего, изменит использование ресурсов.

И это рискованно, но, возможно, вы перешли с 32-разрядной системы на 64-разрядную? Это немного увеличило бы использование памяти, поскольку адреса (указатели) в два раза больше на 64-разрядных архитектурах, а код с большим количеством небольших объектов использует большое количество указателей.

В целом, однако, мы не можем сказать вам многого, не увидев, что изменилось в системе.

Ответ №2:

12 слишком мало, если вы используете не только drupal в его нынешнем виде. Рекомендуется чем больше модулей вы установите, тем больше, обычно для обработки изображений достаточно 96 МБ…

Ответ №3:

12 МБ действительно очень мало. Я бы предпочел проигнорировать это и продолжить.

Идеи, что могло бы измениться, хотя:

  • На старом сервере могли быть установлены модули, которые уменьшали использование памяти, например memcache

  • Новому серверу, возможно, придется полагаться на GD библиотеку для обработки изображений, в то время как на старом сервере, возможно, она была ImageMagick (которая является внешним инструментом и не учитывается при расчете лимита памяти)