Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Golang: socket, tcp, udp, network

Что такое сокеты?

Проверяет знание базового механизма сетевого взаимодействия.

Короткий ответ

Сокет — это программный интерфейс для обмена данными между компьютерами по сети. Он работает как двусторонний канал: одна программа (сервер) слушает сокет, другая (клиент) подключается к нему. Например, веб-сервер открывает сокет на порту 80 для приёма HTTP-запросов.

Длинный ответ

Как работают сокеты:

  1. Сервер:

    • Создаёт сокет, привязывает его к IP и порту.

    • Ожидает подключений (Listen).

    ln, _ := net.Listen("tcp", ":8080") // Сокет слушает порт 8080
    conn, _ := ln.Accept() // Ожидает клиента
  2. Клиент:

    • Подключается к серверному сокету.

    conn, _ := net.Dial("tcp", "server.com:8080")

Типы сокетов:

  • TCP: Гарантирует доставку данных (используется в HTTP, gRPC).

  • UDP: Быстрый, без гарантий (стриминг, игры).

Сценарии:

  • Чат-приложения (обмен сообщениями).

  • API-серверы (приём HTTP-запросов).

Вывод: Сокеты — фундамент сетевого взаимодействия. Для высокоуровневых задач используйте gRPC или WebSockets.

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    5

Навыки

  • Golang

    Golang

Ключевые слова

#socket

#tcp

#udp

#network

Подпишись на Golang Developer в телеграм

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.