Привет, друзья! Сегодня разберёмся с двумя базовыми понятиями сетевых технологий, без которых невозможно представить нагрузочное тестирование. Поможет нам в этом... обычный многоквартирный дом! 🏠
🔑 Основная аналогия: дом с квартирами
Хост (Host) — это как многоквартирный дом с уникальным адресом на улице. В мире компьютеров это любое устройство с IP-адресом в сети (сервер, компьютер, смартфон).
Порт (Port) — это как номер квартиры в этом доме. Позволяет определить, куда именно (в какое приложение или сервис) должны попасть данные на конкретном устройстве.
👨💻 Как это работает на практике?
Представьте многоквартирный дом по адресу
ул. Серверная, 192.168.1.10 (это наш IP-адрес).В этом доме:
📞 Квартира 80 — веб-сервер (HTTP)
🔐 Квартира 443 — защищённый веб-сервер (HTTPS)
📧 Квартира 25 — почтовый сервис (SMTP)
📁 Квартира 21 — FTP-сервер для файлов
🔌 Квартира 22 — SSH для удалённого доступа
Когда к вам приходит запрос на
192.168.1.10:80, это всё равно что письмо с адресом "ул. Серверная, 10, кв. 80" — оно попадёт именно в веб-сервер, а не в почтовый сервис!⚡️ Важные моменты для тестирования производительности:
- Порты как узкие места
Слишком много посетителей пытаются попасть в одну "квартиру"? В реальном мире образуется очередь! Так же и с портами — они могут стать узким местом при высокой нагрузке.
- "Зарезервированные квартиры"
Порты 0-1023 — привилегированные, как элитные квартиры. Для их использования нужны особые права (root/admin).
- "Стандартные планировки"
80 — HTTP
443 — HTTPS
3306 — MySQL
6379 — Redis
5432 — PostgreSQL
8080 — Альтернативный веб-порт (часто для тестовых окружений)
- "Свободные квартиры"
Порты 1024-49151 — зарегистрированные, но многие свободны.
Порты 49152-65535 — динамические, используются временно.
🛠 Как проверить "жильцов" во время тестирования?
🐧 В Linux:
# Показать все открытые порты и слушающие сокеты
netstat -tuln
# Узнать, какое приложение использует порт 8080
lsof -i :8080
🪟 На Windows:
# Показать все открытые порты
netstat -an
# Узнать, какой процесс использует порт 8080
netstat -ano | findstr :8080
❓ Почему это важно для нагрузочного тестирования?
При создании тестового сценария вы должны точно знать, к какому "дому" (хосту) и в какую "квартиру" (порт) стучаться
💭 А вы сталкивались с ситуациями, когда проблемы с производительностью системы были связаны именно с портами? Как вы их решали? Делитесь опытом в комментариях!
#полезности | 🍩 Донейшн | 📈 Забустить канал
