Назад | Перейти на главную страницу

Производительность однопоточного процессора с PHP

У меня есть ламповый веб-сервер, на котором запущен веб-сайт, функции которого сильно раздуваются. У меня есть несколько страниц, которым на рендеринг PHP требуется 2-3 секунды процессорного времени. Большинство других страниц обрабатываются примерно за 0,2 секунды.

Я оптимизировал вызовы БД и использую SSD-диски, но на данный момент приложение оптимизировано настолько, насколько я могу его получить.

Подумал немного надуть, модернизируя процессоры. Проблема в том, что процессоры 2016 года только примерно на 30% быстрее в однопоточном режиме, чем мои процессоры 2011 года.

Правильно ли я, что процессор с такой же скоростью одного потока не будет быстрее при загрузке отдельной страницы? Я понимаю, что он сможет лучше справляться с одновременной загрузкой страниц, но на данный момент это не проблема.

Любой вклад будет оценен.

Я не думаю, что более быстрые процессоры производят более 10-20% реальной производительности.

Мои предложения:

  • Оптимизация кода, вероятно, имеет наибольший смысл. Для этого может понадобиться разработчик, который сможет сократить количество обращений к базе данных, сократить общую выполняемую работу или просто оптимизировать ее.
  • Помещение в кеш страницы, если страница не настроена для каждого пользователя. Nginx отлично подходит для этого, и он может либо стоять перед вашим текущим веб-сервером, либо заменять его. Кэширование, вероятно, является самым быстрым и лучшим решением, если каждая страница не настраивается для каждого пользователя. Даже кеширование на 30 секунд может помочь.
  • Добавьте CDN, который не поможет времени генерации страницы, но может помочь загрузить другие ресурсы и ускорить процесс. Для этого очень важна установка кэширующих головок. CloudFlare, например, имеет бесплатный уровень.
  • Попробуйте HHVM вместо обычного PHP - он может быть значительно быстрее PHP5. Он написан facebook, и не все PHP-приложения работают с ним, но Wordpress и пара, которую я пробовал, работают.