Самый быстрый движок(CMS) для сайта!
Производительность важный фактор, способный сэкономить деньги.Простой пример:
Некий коммерческий движок(CMS) для сайта (CMS), назовём его 1СБ, по данным тестирования с его же сайта генерирует 7 страниц в секунду в условиях выделенного сервера, что соответствует ~0,14c. на генерацию одной страницы.
В условиях обычной конфигурации у Апача 256 процессов, это значит максимум обслуженных клиентов в секунду 7 * 256 = 1792.
Само собой, с обычного хостинга попросят перейти на выделенный сервер при подобной нагрузке, а это примерно от 3000р в месяц, в то время как обычный хостинг стоит в десять раз меньше.
(Следствием чего по интернету навешано куча рекламы об аренде серверов под данную CMS. Хочу заметить: если видите рекламу - сервер под конкретную CMS - это означает, что либо движок (или как сейчас модно называть CMS) очень медленный, либо есть проблема с совместимостью софта, либо в целом с работоспособностью. Не стоит забывать что у большинства, особенно общедоступных движков, безопасность на низком уровне так же как и SEO оптимизация.)
К сожалению большая часть рынка движков не блещет производительностью, часть из них не способны работать без предварительного кэширования и даже при этом скорость всё равно остаётся низкой.
Переходим к Fast Site Engine, время генерации страницы от 0.0009 до 0.003, данная разница напрямую зависит от:
- Жёстких дисков и рейд системы на сервере
- Идут ли фоновые операции с диском
- Настройки кэширования php акселератора
- Сложности построения меню
- Размера страницы
За скоростью генерации можно понаблюдать внизу страницы, текущая настройка сервера Apache 2.4.38 + PHP 7.3.3 + PHP-FPM + OPcache. (Первая загрузка не в счёт - OPcache собирает в бинарный вид php(текстовые) скрипты, выполнение скрипта всё равно происходит..) (по соседству работают ещё много сайтов, на выделенных серверах скорость будет больше/время генерации меньше.)
Данная страница под Apache 2.4.27 + PHP 5.6.31 + OPcache:
Страница сгенерирована за 0.003736 секунды На один процесс веб-сервера: 268 стр/сек. Всего Apache может отдать: 68 608 стр/сек.Apache 2.4.27 + PHP 7.2.5 + PHP-FPM + OPcache:
Страница сгенерирована за 0.001132 секунды На один процесс веб-сервера: 883 стр/сек. Всего Apache может отдать: 226 048 стр/сек.
Быстрее прошлого тестирования на ~329% (на более-более старой версии движка, страница тестировалась без текущих изменений - почти один в один). Как видим, разработчики php тоже стараются :)
Обновление 26.05.2018
В связи с новым постоянным набором функций и анимаций, написанных для движка см. библиотеку JavaScript и связанной с этим серверной частью - обновил движок(CMS) этого сайта. Провёл замеры производительности на главной странице до и после. В конфигурации Apache 2.4.27 + PHP 7.2.5 + PHP-FPM + OPcache.. Над движком были проделаны подготовительные работы перед новой архитектурой.
До:Страница сгенерирована за 0.001302 секунды На один процесс веб-сервера: 768 стр/сек. Всего Apache может отдать: 196 608 стр/сек.После:
Страница сгенерирована за 0.000977 секунды На один процесс веб-сервера: 1024 стр/сек. Всего Apache может отдать: 262 144 стр/сек.
Прирост производительности составил ~33%, на новой архитектуре ожидал выдать +50%, чувствую будет сильно больше.
На сайте появилась самая большая и медленная страница библиотека JavaScript, когда либо собираемая мной..
На ней можно посмотреть как ведёт себя движок(CMS) в случае огромных (72 Кб) страниц с кучей ссылок (155 шт) внутри, которые он обрабатывает для функционирования ссылочной системы.
(Шаблон сайта и его ссылки не учитывал.. Среднестатистическая страница весит 10 Кб и имеет несколько ссылок, чаще ближе к 0..)
Страница сгенерирована за 0.003857 секунды На один процесс веб-сервера: 259 стр/сек. Всего Apache может отдать: 66 304 стр/сек.
Как видим, даже в такой тяжёлой ситуации, катастрофы не произошло.
И наконец считаем: 1сек. /
(В одном из своих проектов разгонял движок до 1000 стр./сек.(сейчас было бы 2000+), это происходило на слабом одноядерном компьютере 1100мгц и памятью менее 800Мб с обычным жёстким ещё IDE диском (не рэйд), софт: Ngnix, php-farm, eAccelerator, Percona Server(sql), без кэширования и прочих возможностей. Отсюда большой вопрос к качеству кода у многих десятков платных движков.)
На практике это означает, что можно спокойно пережить моменты наступающие в случае внезапного увеличения нагрузки (или сезонного, как в некоторых сферах), в то время как множество медленных движков при перегрузках на хостинге приведёт к блокированию аккаунта роботом, чтоб не допустить общей перегрузки и отжирания ресурсов у сайтов "соседей"..
Можете надстраивать поверх систему любой сложности, будучи уверенными в том, что есть большой запас производительности.
Информация для размышления:
Отчётность среднего потребления взята с 2 одинаковых серверов (CENTOS 5.8 x86_64 standard, Apache 2.2.24, PHP 5.2.17, MySQL 5.5.30-30.1), на 1 клиента вместе с системными нагрузками (systime+usertime). Стоит отметить - пинг с серверами 140мс что в свою очередь должно влиять на процессорное время. (замеры проводит софт от 1h software)
Среднее выделение (по возможности взято из пиковых нагрузок, к примеру 200 клиентов за промежуток в час.)
Движок память процессор
Bitrix ~250Мб ~1,3с UMI ~140Мб ~0,4-1,2с UMI ~220Мб ~0,57с WordPress ~166Мб ~0,42с WordPress ~212Мб ~0,61с WordPress ~179Мб ~0,55с Drupal ~130Мб ~0,3с Drupal ~86Мб ~0,44с Drupal ~182Мб ~0,52с Joomla ~170Мб ~0,46с Joomla ~140Мб ~0,4с Joomla ~167-240Мб ~1,17с
Fast Site Engine
Маленькие сайты:
~3,73Мб ~0,1с (потребление этого сайта) ~3,73Мб ~0,11с ~3,73Мб ~0,12сОчень большие сайты, интернет магазины (местами использован MySql) 1000-2000 разделов:
~3,73-13Мб ~0,17с ~3,73-17Мб ~0,2с ~3,73-5,21Мб ~0,71с ~3,73-4,26Мб ~0,7с ~3,73-6Мб ~0,65с ~3,73-5Мб ~0,77с