Тестирование производительности плагина Wordfence

Я решил попробовать плагин Wordfence. Он позиционирует себя как плагин безопасности, обладающий дополнительным преимуществом: повышением производительности. Он утверждает следующее: «для лучшей защиты от DDoS-атак ваш сайт может использовать минимум ресурсов». Это целесообразно. Но может ли быть достигнуто улучшение производительности в 50 раз? Это нужно протестировать.

Wordfence Security – это бесплатный плагин для улучшения безопасности и производительности, который ускорит ваш сайт в 50 раз и сделает его более защищенным.

… Включает в себя Falcon Engine, самый быстрый из существующих механизмов кэширования. Falcon очень быстрый, поскольку он снижает активность диска и базы данных вашего сервера до минимума.

Давайте проверим!

Тестирование

Ниже приведен простой «ab» (Apache Bench) тест производительности для сайта:

$ ab -c 1 -n 100 http://mattiasgeniar.be/

Тест позволяет понять следующее: сколько времени занимает выполнение 100 запросов, следующих один за другим? Первый тест был сделан в чистой сборке WordPress. Второй тест был сделан в сборке с включенным плагином Wordfence, но с отключенными возможностями защиты (без проверки IP, без защиты от брутфорса, только с включенным кэшированием).

Без плагина

У меня не было никаких других включенных плагинов производительности, никаких W3 Super Cache и т.д. Чистая сборка WordPress с несколькими плагинами, и ничего для увеличения скорости. Вот два результата. Два тестовых прогона шли один за другим.

$ ab -c 1 -n 100 http://mattiasgeniar.be/
...
Time taken for tests:   146.746 seconds

$ ab -c 1 -n 100 http://mattiasgeniar.be/
...
Time taken for tests:   166.953 seconds

Первый запуск занял 146 секунд, а второй – 166. Среднее время: 156 секунд на сотню запросов или 1.56 секунд на запрос. Ужасно, если честно.

С включенным плагином Wordfence

Тот же самый тест, но уже с включенным плагином производительности. Тест показал следующее:

$ ab -c 1 -n 100 http://mattiasgeniar.be/
...
Time taken for tests:   7.681 seconds

$ ab -c 1 -n 100 http://mattiasgeniar.be/
...
Time taken for tests:   7.735 seconds

Первый запуск занял 7.6 секунд, второй – 7.7. Среднее время: 7.6 секунд на сотню запросов. Это где-то 0.076 секунд на запрос.

Заключение

wordfence_performance-300x134
Результаты говорят сами за себя: да, плагин работает. Работает он точно так же, как и WP Super Cache: генерирует статичные HTML-файлы, которые передаются напрямую, без затрагивания PHP или MySQL. Если вы работаете с Nginx, вам нужно будет добавить дополнительные правила перезаписи к вашему конфигу vhost, чтобы разрешить это. Если вы работаете с Apache, вам нужно будет добавить дополнительные правила RewriteRules в .htaccess, чтобы включить эту возможность.

Чем отличается новая производительность от старой? Это очевидно. Во-первых, время отклика на главной странице (и всех других страницах) снизилось кардинально.

blog_response_time-1024x238

И, как дополнительный результат, скорость загрузки значительно выросла, поскольку запросу не нужно долго ждать ответа сервера.

blog_download_speed-1024x238

Заключение: 50-кратное увеличение производительности – это не ложь: плагин достигает этого, как и Varnish, путем генерации HTML в памяти/на диске и передачи статичных файлов в последующих запросах. Эффективная штука.

Блог про WordPress
Комментарии: 6
  1. gOuTM

    Если установка делается из каталога WordPress, нужно ли вносить упомянутые в тексте изменения вручную или же плагин это сделает автоматически?

    1. Дмитрий (автор)

      Должен сделать автоматически. Возможно, только понадобится опции включить нужные в плане оптимизации.

  2. Виктор

    Спасибо за ценные сведения о Wordfence.
    Я так понимаю что Wordfence все таки это в первую очередь плагин защиты.

    И надо ли тогда ставить Total Cache?
    Одно дело, не очень принципиально когда ведешь блог. Но я скоро хочу соцсеть на buddypress запускать..
    Для себя уже определил вроде бы связку: для кеша с CDN это W3 Total Cache, для защиты Wordfence. А здесь оказывается что Wordfence имеет функцию кеширования.
    И как быть?))

    1. Дмитрий (автор)

      Можно либо ее использовать, либо нет. Она практически такая же, как в Wp Super Cache. Лучше обходиться Wordfence, чтобы не ставить кучу плагинов дополнительных.

  3. Otshelnik-fm

    Но никто из админов его тут не тестировал? И если 100 пользователей залогинены на сайте — тест бессмысленный?

    1. Дмитрий (автор)

      За себя скажу, что не тестировал.

Добавить комментарий

Получать новые комментарии по электронной почте.