Сеть для бэкендера
Сетевой фундамент для backend-разработчика: OSI и TCP/IP, IP и порты, TCP против UDP, DNS, HTTP и HTTPS, версии HTTP, соединения и пулы, балансировщики и надёжность.
Зачем это бэкендеру. Вы каждый день пишете REST-контроллеры и ходите в базы и соседние сервисы — а всё это работает поверх сети: TCP, TLS, DNS, HTTP. Не понимая, что там внизу, легко принять неверное решение: поставить не тот таймаут, забыть про пул соединений, не разобраться, почему сервис «то отвечает, то нет». Этот раздел — фундамент, на который встают REST и контракты, Kubernetes и облако. Входит в программу подготовки.
Раздел разбит на десять статей — от общей модели до практических вещей, с которыми backend-разработчик сталкивается в коде и в проде. Знания переносимы: это не про конкретный язык или облако, а про то, как устроена сеть под любым сервисом.
Модель и адресация
- Как устроена сеть: модели OSI и TCP/IP — семь слоёв и четыре: карта, по которой всё встаёт на места.
- IP-адреса, порты и NAT — как пакет находит нужную машину и нужный сервис на ней.
- TCP и UDP: надёжность против скорости — два способа передавать данные и когда какой.
- DNS: как доменное имя превращается в адрес — телефонная книга интернета и почему её TTL важен для сервиса.
HTTP и шифрование
- HTTP: методы, статусы, заголовки — язык, на котором разговаривают веб-сервисы.
- HTTPS и TLS: шифрование и рукопожатие — как соединение становится защищённым и что происходит при handshake.
- HTTP/1.1, HTTP/2 и HTTP/3: что поменялось — почему появились новые версии и что они дают бэкенду.
Соединения и надёжность
- Соединения: keep-alive, пулы и таймауты — почему открывать соединение дорого и как это влияет на производительность сервиса.
- Балансировщики и обратные прокси — как трафик доходит до одного из многих экземпляров сервиса.
- Сеть и надёжность: таймауты, ретраи, идемпотентность — сеть ненадёжна по своей природе, и код должен это учитывать.
Связанное
- REST и контракты — HTTP-семантика в проектировании API.
- Kubernetes и сеть в AWS — где эти основы всплывают в эксплуатации.
- Resilience style guide — таймауты и ретраи как правила, а не импровизация.