Короткий ответ L4-балансировка работает на транспортном уровне, распределяя трафик по IP-адресу и порту назначения без анализа содержимого запроса (быстрее, протокол-агностична), L7-балансировка работает на прикладном уровне (чаще HTTP/HTTPS), анализируя содержимое запроса (путь, заголовки, cookies) для более гибкой маршрутизации; health checks в обоих случаях нужны, чтобы исключать из пула нездоровые backend-серверы и не отправлять им трафик. Как это работает подробнее L4-балансировщик принимает решение о распределении на основе заголовков транспортного/сетевого уровня (например, IP:порт, иногда с учётом хэша для consistent hashing), не завершая и не разбирая прикладной протокол, что даёт низкую задержку и возможность работать с любым TCP/UDP-трафиком; L7-балансировщик терминирует соединение, разбирает HTTP-запрос и может принимать решения вроде маршрутизации по пути URL, добавления заголовков, терминации TLS, что требует больше вычислительных ресурсов, но даёт гораздо более гибкую логику. Пример кода Что ис