NSQ - это программное обеспечение с открытым исходным кодом в очереди

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.

Исследовать

В этой статье мы обсуждали о распределенной платформе обмена сообщениями NSQ в реальном времени. Чтобы узнать о другом программном обеспечении очереди (MQ), посетите следующие страницы:

Sidekiq

Апач Кафка

Rabbitmq

Реза

Сельдерей

5 лучших программного обеспечения с открытым исходным кодом

 Русский