Удобная альтернатива netstat: показывает сокеты и прослушиваемые порты в таблице на Linux и macOS.
zeromq/libzmq
Базовая C++-библиотека ZeroMQ, расширяющая стандартные сокеты асинхронными очередями сообщений, паттернами обмена и поддержкой разных транспортов.
- Звёзды
- 11,030
- Форки
- 2,494
- Открытые issues
- 396
- Последний коммит
- 7 дней назад
Что это?
libzmq — базовый движок ZeroMQ, лёгкой библиотеки для обмена сообщениями, которая расширяет стандартные интерфейсы сокетов функциями, обычно доступными в специализированном ПО для обмена сообщениями. Сокеты предоставляют асинхронные очереди сообщений, несколько паттернов обмена, фильтрацию сообщений по подпискам и доступ к разным транспортным протоколам. Библиотека реализует протокол передачи данных ZMTP 3.1.
Библиотека написана преимущественно на C++98 с некоторыми необязательными фрагментами кода на C++11; её можно собрать с помощью autotools или CMake. Готовые пакеты доступны для Linux и macOS, а для установки в других системах можно использовать vcpkg и Homebrew. В документации перечислены поддерживаемые платформы: Linux, Windows, macOS, Android, а также несколько вариантов BSD и Unix.
Разработчики используют libzmq, когда нужно связать распределённые процессы с помощью обмена сообщениями по моделям запрос-ответ, публикация-подписка или конвейер, не создавая собственную инфраструктуру очередей. Языковые привязки для других языков строятся поверх этой библиотеки.
Ключевые возможности
- 01Асинхронные очереди сообщений, доступные через стандартные API сокетов
- 02Несколько паттернов обмена сообщениями, например запрос-ответ, публикация-подписка и конвейер
- 03Фильтрация сообщений по подпискам
- 04Доступ к разным транспортным протоколам
- 05Реализация протокола передачи данных ZMTP 3.1
- 06Сборка с помощью autotools или CMake
Сценарии использования
- Связывание распределённых сервисов с помощью асинхронного обмена сообщениями между процессами
- Создание потоков данных по модели публикация-подписка между компонентами, подключёнными к сети
- Использование в качестве нативной основы для языковых привязок, работающих с ZeroMQ
Быстрый старт
- 1
Установить на macOS с помощью Homebrew
brew install zeromq - 2
Клонировать репозиторий vcpkg
git clone https://github.com/microsoft/vcpkg.git - 3
Подготовить vcpkg (bash)
./bootstrap-vcpkg.sh - 4
Установить zeromq с помощью vcpkg
./vcpkg install zeromq
Что важно знать
- Готовые бинарные пакеты предоставляются только для Linux и macOS; для остальных платформ требуется сборка из исходного кода.
- API DRAFT могут измениться в любой момент без предупреждения. Чтобы избежать этого, используйте сборку STABLE.
В подборках
Темы
Частые вопросы
- Что такое libzmq?
- Базовая C++-библиотека ZeroMQ, расширяющая стандартные сокеты асинхронными очередями сообщений, паттернами обмена и поддержкой разных транспортов. libzmq — базовый движок ZeroMQ, лёгкой библиотеки для обмена сообщениями, которая расширяет стандартные интерфейсы сокетов функциями, обычно доступными в специализированном ПО для обмена сообщениями. Сокеты предоставляют асинхронные очереди сообщений, несколько паттернов обмена, фильтрацию сообщений по подпискам и доступ к разным транспортным протоколам. Библиотека реализует протокол передачи данных ZMTP 3.1.
- libzmq можно использовать бесплатно? Какая у него лицензия?
- libzmq распространяется с открытым исходным кодом под лицензией MPL-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- libzmq всё ещё поддерживается?
- Активно поддерживается. Последний коммит в libzmq — 18 окт. 2026 г..
- Для чего можно использовать libzmq?
- Связывание распределённых сервисов с помощью асинхронного обмена сообщениями между процессами Создание потоков данных по модели публикация-подписка между компонентами, подключёнными к сети Использование в качестве нативной основы для языковых привязок, работающих с ZeroMQ
- Как установить libzmq?
- Установить на macOS с помощью Homebrew: brew install zeromq Клонировать репозиторий vcpkg: git clone https://github.com/microsoft/vcpkg.git Подготовить vcpkg (bash): ./bootstrap-vcpkg.sh Установить zeromq с помощью vcpkg: ./vcpkg install zeromq
- Где скачать libzmq?
- Исходный код и инструкции по установке — на GitHub: https://github.com/zeromq/libzmq
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Асинхронная среда выполнения для Rust с планировщиком задач, неблокирующим вводом-выводом, сетевыми возможностями и таймерами для надёжных сетевых приложений.
PHP-расширение с событийным сетевым движком и средой выполнения корутин для создания постоянно работающих TCP-, UDP-, HTTP- и WebSocket-сервисов.
Безопасный обмен локальными веб-сервисами, файлами и ресурсами TCP/UDP через сеть с нулевым доверием — без настройки firewall и проброса портов.
Переносимый runtime для распределённых приложений и AI-агентов: надёжные workflow, безопасное взаимодействие сервисов, управление состоянием и pub/sub через sidecar.
Распределённый MQTT-брокер на Erlang для IoT и промышленного обмена сообщениями с поддержкой MQTT 3.1, 3.1.1 и 5.0.