~ / blog / servery

Серверы — страница 5

Docker, сертификаты, бэкапы и защита сайтов.

#Серверы 4 мин

Белый адрес домой: статический NAT, серый WAN и проброс портов на MikroTik

Три услуги провайдера, которые звучат одинаково, и почему подошёл статический NAT за 100 ₽ в месяц. Почему на роутере адрес всё равно серый и проброс надо делать по интерфейсу, а не по адресу. И замер, который показал: дома не медленнее хостинга — тормозил VPN на моём же компьютере.

· · ·
#Серверы 4 мин

DNS: как имя сайта превращается в адрес

Никто не знает всех адресов: корень отправляет к зоне ru, зона ru — к серверам домена, и только они отвечают. Проходим цепочку командой dig +trace, разбираемся с TTL — 2 суток, 4 суток и 5 минут — и почему второй запрос занимает 0,6 мс.

· · ·
#Серверы 5 мин

Сервер из ноутбука 2013 года: BIOS, сон, Wake on LAN и «сам перезагрузился»

Ноутбук на i3 и 4 ГБ держит полтора десятка сайтов: батарея вместо ИБП, сон запрещён, после отключения света его будит роутер. А «самопроизвольная перезагрузка» оказалась коротким нажатием кнопки питания — и нашлась только после того, как стало ясно, почему journalctl и grep по дате ничего не видят.

· · ·
#Серверы 3 мин

Секунда между Enter и страницей: что происходит, когда открываешь сайт

Один запрос к сайту, разложенный по миллисекундам: DNS 36, TCP 28, TLS 128, ожидание сервера 310, загрузка 55. Почему сеть — самое быстрое в этой цепочке и почему второй запрос вдвое быстрее первого.

· · ·
#Серверы 5 мин

fail2ban 13 дней молча не работал — а до этого забанил хозяина

Сменили формат журнала на JSON — и фильтры перестали совпадать хоть с одной строкой: 69 банов за четыре дня, потом ноль за тринадцать, а статус всё это время «работает». До этого фильтр забанил владельца за штатный запрос админки WordPress. Четыре способа сделать защиту бумажной и проверка за пять минут.

· · ·
#Серверы 2 мин

Телеметрия PHP-FPM: slowlog, статус пула и проверка не того конфига

Журнал медленных запросов со стеком, страница статуса с адресом на .php, время ответа и статус кэша в журнале nginx. И грабля: php-fpm -tt без -y читает конфиг из пакета, а не тот, с которым работает мастер.

· · ·
#Серверы 3 мин

«pool seems busy»: PHP-FPM разгоняет себя сам при двух запросах

За 15 секунд всплеска — два запроса через nginx, а процессов стало 46 вместо 14. FPM удваивает запуск каждую секунду, а подъём min_spare делает только хуже. Тёплый запас через start_servers и max_spare: 0 предупреждений вместо 22.

· · ·
#Серверы 3 мин

PHP-FPM без request_terminate_timeout: 5 часов 40 минут 502 от одного запроса

Внешний сервис принял соединение и замолчал — все 100 процессов PHP повисли навсегда, файловые сессии добили остальных. Предохранитель в пуле — одна строка, по умолчанию её нет. Куда вписать в Docker и как распознать такую аварию за пять минут.

· · ·
#Серверы 3 мин

Сайт на WordPress в Docker: пять контейнеров и 310 МБ памяти

Из чего состоит этот сайт: nginx, PHP-FPM, MariaDB, Redis и общий traefik. Сокеты вместо сети, база на 23 МБ вместо настроек «для выделенного сервера», пул по требованию на 6 процессов с предохранителем, Redis во внутренней сети.

· · ·

$ tail -f /blog

Не пропустите новые статьи

Пишу разборы по скорости сайтов, кэшу и разработке — на живых проектах и с цифрами. Подпишитесь, и ссылка на новую статью придёт сразу после выхода. Без рекламы и спама, отписаться — в один клик.

В Telegramодна кнопка «Старт» в боте

или на почту

связаться

Расскажите о задаче