WP Super Cache vs MaxSite Cache: часть 2
Тест страничных кэшей на грамотно настроенном сервере
Вторая часть статьи WP Super Cache vs MaxSite Cache.
В предыдущей части я сравнивал поведение MaxSite Cache и WP Super Cache на тестовом VDS (512 MiB RAM, 10 GB HD, Intel Xeon X3320 (1 ядро), 2.5 GHz), на котором ни операционная система, ни программное обеспечение не были специально настроены — бралась конфигурация «из коробки» и тестировалась. Одним словом, «VDS абсолютного чайника».
В этой части изменилась только конфигурация программного обеспечения: сервер настраивался на максимальную производительность.
В частности:
- отказ от Apache в пользу nginx и от
mod_php5в пользуphp-fcgi(количество FastCGI-процессов выбиралось таким образом, чтобы избежать использования файла подкачки); - смена ядра с
linux-image-serverнаlinux-image-virtual; - настройка MySQL: отказ от InnoDB (экономит примерно 100 МБ памяти), увеличение буфера ключей и т.п.;
- установка и настройка xCache (я исходил из того, что далеко не все чувствуют себя комфортно при сборке программ из исходников, поэтому брал только готовое ПО);
- настройка
iptablesдля фильтрации пакетов.
Методика тестирования осталась прежней: карта сайта преобразовывалась в список адресов, на этот список натравливался siege, а я присматривал за сервером и вносил коррективы в конфигурацию ПО (да, с первого раза трудно всё настроить идеально).
Чтобы убедиться, что новая конфигурация не хуже старой, я полностью отключил кэширование и имитировал 50 одновременных посетителей в течение 15 минут. На момент выполнения теста у сервера было свободно 348.5 МиБ памяти.
| Голый WordPress | |
|---|---|
| Количество транзакций | 4,825 |
| Доступность сервера | 99.98% |
| Объём данных, МБ | 28.32 |
| Среднее время ответа, с | 9.23 |
| Частота транзакций в секунду | 5.36 |
| Пропускная способность, МБ/с | 0.03 |
| Коэффициент параллельности | 49.50 |
| Максимальная длина транзакции, с | 30.76 |
| Минимальная длина транзакции, с | 1.15 |
| Максимальная загрузка процессора (system/user) | 25.72%/68.39% |
| Load Average | 40.81 |
| Примерное потребление памяти, МиБ | 414 |
Данные загрузки/потребления памяти очень приблизительны. Хотя вряд ли пользователи станут ждать по 9 секунд загрузку страницы, радует, что сервер не ответил только на один запрос и не ушел в нокдаун. Простая экстраполяция показывает, что сервер выдержит примерно 463,000 обращения к PHP-страницам в сутки.
Мы убедились, что новая конфигурация вполне жизнеспособна (старой до неё, как до Китая в неудобной позе), переходим к тестированию плагинов.
Тестирование проходило в 30 и 75 потоков. Я не разделял фазы построения и использования кэша.
| MaxSite Cache (30 потоков) |
MaxSite Cache (75 потоков) |
WP Super Cache (30 потоков, HALF ON) |
WP Super Cache (30 потоков) |
WP Super Cache (75 потоков) |
|
|---|---|---|---|---|---|
| Количество транзакций | 176,684 | 182,604 | 5,069 | 198,160 | 189,686 |
| Объём данных, МБ | 1,062.24 | 1,099.60 | 29.99 | 1,202.95 | 1,147.33 |
| Среднее время ответа, с | 0.13 | 0.34 | 5.30 | 0.10 | 0.29 |
| Частота транзакций в секунду | 196.36 | 203.00 | 5.64 | 220.20 | 210.95 |
| Пропускная способность, МБ/с | 1.18 | 1.32 | 0.03 | 1.34 | 1.28 |
| Коэффициент параллельности | 25.42 | 69.32 | 29.85 | 23.05 | 62.16 |
| Максимальная длина транзакции, с | 21.08 | 26.12 | 15.06 | 22.78 | 25.03 |
| Минимальная длина транзакции, с | 0.00 | 0.00 | 0.48 | 0.00 | 0.00 |
| Load Average | 1.8 | 2.2 | 30.1 | 1.3 | 1.65 |
Краткие выводы: на грамотно настроенном сервере лидирует WP Super Cache — и по скорости, и по создаваемой нагрузке. Это связано с тем, что задача по отдаче закэшированного контента переложена на web-сервер. Так как web-сервер справляется со статикой быстрее, чем с динамикой, в результате получаем рост производительности и снижение нагрузки.
Если по той или иной причине WP Super Cache не может работать в режиме Full On, то MaxSite Cache будет всё же предпочтительнее — ввиду своей простоты он обладает исключительным быстродействием.
Связанные записи
Автор: Vladimir; опубликовано в: WordPress; метки: FastCGI, MaxSite Cache, nginx, WordPress, WP Super Cache, кэш, производительностьДек
2009


[...] В следующей части: тест WP Super Cache и MaxSite Cache на грамотно настроенном сервере. [...]
[...] 3. Михаил Шакин на общей волне паранойи по поводу недавних вирусов и взломов старых версий в очередной раз обсасывает вопрос безопасности Wordpress, а Пузат также в очередной раз на пальцах объясняет о оптимизации работы нашей любимой блог-платформы. Кстати, сравнение упомянутых им плагинов для кэширования данных вы можете найти здесь. [...]