Стабильный клиент Node JS AMQP 1.0 (концентратор событий)

Мне нужен стабильный клиент AMQP 1.0 для NodeJS, чтобы я мог получать события из концентраторов событий Azure.

Я пытался использовать https://github.com/noodlefrenzy/node-amqp10, но он задыхается спорадически на определенных полезных нагрузках с такими сообщениями, как malformed payload: Unknown code prefix: 0x30 и malformed payload: Unable to decode bytes from message body: 005375b00002810c5b7b226576656e7474797065223 (...).

Я был бы признателен за любое направление, которое люди могут предложить для стабильного клиента AMQP 1.0 в NodeJS. Я удивлен, что до сих пор не смог найти его, поскольку в противном случае кажется, что Azure не поддерживает всю базу разработчиков.


person Ian Walker-Sperber    schedule 23.10.2015    source источник
comment
Не могли бы вы вставить тот же код, чтобы решить проблему? Я рассмотрел пакет node. И я думаю, что он нестабилен и сейчас находится в стадии разработки. Поэтому я предлагаю использовать EventProcessorHost(azure.microsoft.com/en-us/documentation/articles/) для C#/.Net для реализации функции потребления событий.   -  person Peter Pan    schedule 28.10.2015


Ответы (2)


Я (со)автор https://github.com/noodlefrenzy/node-amqp10. Ошибка, которую вы видели, была связана с тем, что большие сообщения были разделены на несколько кадров передачи — с чем мы раньше не сталкивались, поэтому не реализовали. Мы только что добавили поддержку этого в версии 2.1.0, поэтому, пожалуйста, проверьте нашу библиотеку еще раз.

Мой соавтор использует это в производстве против QPID в течение нескольких месяцев, и мы оба активно поддерживаем его, пока у нас есть время, поэтому, если есть какие-либо нестабильности или отсутствующие функции, мы постараемся исправить их. Часто это просто проблемы, когда нам не нужна функция (невероятно большой) спецификации или мы неверно интерпретируем (невероятно разрозненные) детали спецификации.

person Mike Lanzetta    schedule 05.11.2015
comment
Привет, github.com/noodlefrenzy/node-amqp10 все еще активно поддерживается? Я хотел бы использовать это, но если его активно не поддерживать, то не уверен, что оно того стоит. - person sij_a; 21.09.2017
comment
Привет @sij_a - я больше не поддерживаю проект. Мой соавтор поддерживает его на полурегулярной основе, и я искал помощи внутри Microsoft, чтобы попытаться взять на себя обязанности по обслуживанию. - person Mike Lanzetta; 25.09.2017

Вы также можете использовать официальный пакет SDK JavaScript для концентраторов событий Azure, @azure/event-hubs, который внутренне использует rhea

person Ramya Rao    schedule 08.12.2020