NSQ Бесплатное программное обеспечение очереди
Open Source и распределенная очередь распределенных сообщений на основе GO
NSQ-это распределенная очередь сообщений в реальном времени с открытым исходным кодом без единой точки отказа. Это надежная служба доставки сообщений с высокой доступностью.
Обзор
NSQ - это распределенная платформа для обмена сообщениями в реальном времени в масштабе. Он обрабатывает огромное количество сообщений каждый день, обеспечивая устойчивость к неисправности и высокую доступность с надежной доставкой сообщений. Он обеспечивает распределенные и децентрализованные топологии без единых точек отказа. Операционно, NSQ лучшая очередь сообщений легко установить, настраивать и развернуть. Сообщения NSQ могут быть JSON, MSGPACK, буферы протокола или любой другой формат данных для достижения максимальной гибкости. Официальные библиотеки клиентов Python также доступны. Одна из целей проектирования системы очередей NSQ сообщений - связать количество сообщений, хранящихся в памяти. Темы, отдельный поток данных и каналов, логическая группировка потоков или потребителей, подписанных на данную тему, являются основными примитивами NSQ. Служба очередей над сообщениями NSQ состоит из 3 демонов: NSQD - это демон, который получает, буферизирует и доставляет клиенты. NSQlookupd обслуживает запросы клиентов, чтобы найти местоположение тем и управлять кластерами метаданные. Он обеспечивает постоянную службу Discovery Service для потребителей, чтобы найти производителей NSQD для конкретной темы. NSQADMIN - это пользовательский интерфейс веб -службы для административных задач кластера в реальном времени вашего кластера NSQ.
Системные Требования
NSQ Simple и Open Source Message Broker работает на:
- Голанг версия 1.13+
- GPM версия 1.4+
- Git
Функции
Некоторые из ключевых функций программного обеспечения NSQ сообщений перечислены ниже:
- Поддерживает распределенные топологии без SPOF
- Сообщения могут быть настроены в постоянном режиме
- NSQ принимает режим памяти и жесткого диска
- Сообщения сохраняются в памяти при перезапусках сервера
- Каждое сообщение доставляется хотя бы один раз
- Горизонтально масштабируемый
- Доставка сообщений на основе низкой задержки
- В основном очередь сообщений в памяти
- TLS Transport Layer Security
- Служба обнаружения времени выполнения, чтобы найти продюсеров
- Формат данных агностик
- Надежный интерфейс администрирования кластера
- Открытый источник
Инструкции по установке
Установить NSQ на Ubuntu
NSQ - лучший брокер сообщений и легко начать распределенную платформу для обмена сообщениями в реальном времени. Во -первых, убедитесь, что в вашей системе установлены все пакеты Depency NSQ. NSQ Все параметры указаны в командной строке, а составленные двоичные файлы NSQ не имеют зависимости во время выполнения. Ниже руководство охватывает установку NSQ на Debian и Ubuntu, включая распределения, основанные на них. Ниже ниже инструкции будут запускать кластер NSQ на вашей локальной машине. NSQ использует модули GO для создания надежных сборков, поэтому используйте ниже команды для составления и для настройки NSQ:
git clone https://github.com/nsqio/nsq
cd nsq
make
Существуют три отдельных двоичных файла NSQLOOKUPD, NSQD и NSQADMIN, которые необходимо установить и запустить. Итак, в одной оболочке запустите nsqlookupd, используя:
nsqlookupd
Во второй оболочке терминала запустите NSQD, используя:
nsqd --lookupd-tcp-address=127.0.0.1:4160
Вы также можете добавить-Broadcast-Address = 127.0.0.1. Большая часть отладки, анализа и администрирования осуществляется через NSQADMIN. Итак, запустите NSQADMIN в New Shell, работая:
nsqadmin --lookupd-http-address=127.0.0.1:4161
Далее опубликуйте первоначальное сообщение, используя:
curl -d 'hello world 1' 'http://127.0.0.1:4151/pub?topic=test'
Запустить nsq_to_file в другой оболочке с командой:
nsq_to_file --topic=test --output-dir=/tmp --lookupd-http-address=127.0.0.1:4161
Наконец, опубликовать больше сообщений в NSQD, как:
curl -d 'hello world 2' 'http://127.0.0.1:4151/pub?topic=test'
curl -d 'hello world 3' 'http://127.0.0.1:4151/pub?topic=test'
Для тестирования команды запуска в терминале:
./test.sh
Для отладки и мониторинга в режиме реального времени команда также работает очень хорошо:
watch -n 0.5 "curl -s http://127.0.0.1:4151/stats"
Наконец, в вашем любимом веб -браузере откройте http://127.0.0.1:4171/, чтобы проверить и просмотреть UI NSQADMIN и увидеть статистику. Пожалуйста, также проверьте содержимое файлов журнала (тест.*. Log) Записано в каталог /TMP. Поздравляю! Вы успешно установили NSQ в системе Ubuntu. Наслаждаться!
FAQS
Что такое NSQ?
NSQ-это распределенная платформа обмена сообщениями в реальном времени в реальном времени, которая каждый день обрабатывает миллионы сообщений. Он доставляет надежные сообщения без устойчивости к неисправности и высокой доступности.
Является ли NSQ с открытым исходным кодом?
NSQ является лучшей очередью сообщений с открытым исходным кодом и распределенной платформой обмена сообщениями в реальном времени. Репозиторий исходного кода NSQ доступен на GitHub.
Без nsq?
NSQ - это бесплатная платформа для использования, а распределенная распределенная платформа сообщений.
Что такое NSQ против Кафки?
NSQ и KAFKA являются службами очереди сообщений. NSQ - это проще для настройки и более простой в развертывании платформы очередей сообщений, в то время как Kafka обеспечивает строгие гарантии и надежность без потери данных.
на каком языке написан NSQ?
NSQ написан на языке программирования GO.