Бенчмарк PHP в Apache и HipHop для PHP?
Я занимаюсь исследованием HipHop для PHP. (Я люблю PHP).
Мы слышали, что Facebook сказал, что использование HipHop для PHP на их веб-сервере делает их код быстрее, использует меньше ресурсов процессора и памяти. Это похоже на отличную технологию, если это правда.
Сейчас я пытаюсь использовать HipHop для PHP, чтобы увидеть, действительно ли он оптимизирует PHP-код или нет. Проблема в том, что у меня нет идеи, как измерить производительность PHP-кода при использовании процессора, памяти и времени выполнения. (В этом случае я хочу сравнить его с сервером APACHE). Любая идея ссылок?
2 ответа
Чтобы сравнить веб-страницу / веб-сайт, вы можете использовать такие инструменты, как:
- ab - Apache Bench: отлично подходит для повторного вызова одной страницы
- Осада: позволяет размещать более одного URL
- JMeter: допускает более сложные сценарии.
В любом случае с помощью этих инструментов вы сможете:
- Отправить много запросов на веб-сервер
- Укажите количество одновременных пользователей, которые должны быть смоделированы.
Пожалуйста, имейте в виду, что выполнение кода не является обычным узким местом PHP. Таким образом, эти тесты не будут иметь смысла, если они выполняются в тестовой среде, а не в реальной.
Есть много других факторов, которые влияют на производительность сайта, и выполнение кода является последним из них, и его следует оптимизировать после того, как все остальное будет настроено идеально. Или, что еще лучше, только когда профилирование скажет вам, что выполнение кода становится узким местом.
Таким образом, в большинстве сред вы не получите никаких результатов или неправильных результатов.
На самом деле, я сомневаюсь, что вы заметите какое-либо отличие (в реальной среде, не работающей с hello world) от обычного кэша кода операции, если только у вас нет небольшого собственного дата-центра.
Я боюсь, что только несколько сайтов в мире могут извлечь что-то из этого хип-хопа. Это все поразительно, романтично и все такое, но если вам нужна реальная оптимизация производительности, это будет где-то еще.