Хостинг VPS

Для попадания в топ10 (Яндекс, Гугль) сайт должен уметь отрабатывать много пользователей

Хостинг VPS

Много пользователей – это не просто много пользователей в период времени, это много пользователей в один момент времени (или близко в миллисек)

Апач – он однопоточный, т.е. пользователи по очереди
Nginx – он многопоточный – но для статики (картинки в основном + кэш от движка)
Nginx +Apace = на 90% хостингов пойдет для чистого html
А вот если у нас динамический сайт на php – вот тут нужны ресурсы.

Серверу нужно собрать html на основе инструкций php

Вот потребление памяти на сборку

Хостинг VPS

Вот потребление ресурсов процессора на сборку

Хостинг VPS

Nginx +Apace+PHP = если php управляется апач – то строго по очереди, никакая оптимизация не даст топ10 – зачем роботам показывать сайт в топ10 выдаче – если его часть пользователей не увидят – они будут стоять в очереди на обработку в Апач (если пришли практически одновременно) и потом их сервер выкинет по таймауту.

Те хорошее SEO – «это обязательное условие – но недостаточное» как говорят математики.
Что бы было многопоточность – нужна надстройка над апач – fastCGI. Или совсем сложный случай: NginX+ (PHP-fpn) = вообще без Апача

На обычном хостинге этого не будет – памяти много жрет (очень много жрет, чем больше пользователей одновременно – тем больше памяти…), нужна VPS (или уже DS – но это уже совсем дорого)

Самая дешевая VPS – на виртуализации OpenVZ
Но и тут засада.
Хостеры очень любят OpenVZ – так там диск тоже виртуальный и его объем динамически распределяется между пользователями. Т.е. Ваши 15 гиг типа у хостера и 3 использованных = факт только 3 использованных и Вам еще выделят до 15 при необходимости…
Поэтому дешево.

НО!
Так как диск виртуальный и он не весь ваш – там невозможен SWAP -> те при исчерпании оперативки будет срабатывать OOM Killer – и самые загруженные процессы будут убиваться. Пришло много пользователей, памяти выделилось много (надо же где-то процу собрать html по инструкциям php), оперативная память кончилась, убили наиболее загруженный процесс (как правило mysql) – сайт/сайты отвалились…..

Те вариант VDS = OpenVZ+Apache+Nginx+FastCGI+PHP – он не нормальный….
Он даже хуже чем обычный виртуальный хостинг – на таком хостинге сайты просто тормозить будут, а на VDS с OpenVZ – падать…

Нужно

  • или KVM брать – он дороже в 4 раза (и как минимум 2 ядра, 4 гига RAM и своп на диске), но там весь диск Ваш и можно сделать SWAP
  • или выделенный сервер в железе – совсем дорого
  • или домашнюю машину 4 ядра + 8 гиг (на том же 775 сокете) + хороший инет-канал 500 Мбит/с + OpenVZ+Apache+Nginx+PHP (без фаста – только для дублирования сайта на хостинге) + DNS от Яндекса (с балансировщиком – основная отдача с домашнего сервера и плюс резерв с платной VPS) + CMS должна уметь делать синхро из дома на сервер (статика и база)
  • основная отдача с домашнего сервера и плюс резерв с платной VPS + на хостинг отдаем только статику html (генерим статичный сайт из WP)
  • Записи должны быть с html на конце (что бы физически файл создать)
  • Те все дополнения и изменения делаем только дома на сервере WP+PHP, потом генерим статику
  • На php остается только форма обратной связи – отдельный скрипт
  • для инет-магаза вообще только облако нужно – те ресурсы по требованию:
  • резкие всплески нагрузки (реклама, акции, сезонность)
  • много пользователей в одном пике – память будет расти лавинообразно

 

Самый медленный вариант

Хостинг VPS

Работа:
– NginX отдает статику (медиафайлы)
– Apache управляет PHP
– памяти минимум
– очень плохо с одновременным заходом пользователей на сайт
Управление:
– запретить хотлинки можно только через NginX
– запретить доступ к файлам, обработку 404 – через Apache (.htaccess)

Вариант по-быстрее

Хостинг VPS

Работа:
– NginX отдает статику (медиафайлы)
– Apache управляет PHP с помощью модуля CGI
– памяти требует больше
– получше с одновременным запуском скриптов PHP
Управление:
– запретить хотлинки можно только через NginX
– запретить доступ к файлам, обработку 404 – через Apache (.htaccess)

Быстрый вариант

Хостинг VPS

Работа:
– NginX отдает статику (медиафайлы)
– Apache управляет PHP с помощью модуля FastCGI
– памяти требует больше
– хорошо с одновременным запуском скриптов PHP
Управление:
– запретить хотлинки можно только через NginX
– запретить доступ к файлам, обработку 404 – через Apache (.htaccess)

Очень быстрый вариант

Хостинг VPS

Работа:
– NginX отдает статику (медиафайлы)
– Apache нет вообще
– памяти требует меньше, чем FastCGI
– отлично с одновременным запуском скриптов PHP

Управление:
– запретить хотлинки можно только через NginX
– запретить доступ к файлам, обработку 404 – через NginX

Надо в NginX:
– переадерсация www
– что там еще у WP
– 404 (с разрешением robots.txt)
– запрет хотлинков
– закрытие доступа 403 к отдельным файлам
– закрытие доступа 403 к вариантам /wp-config*