Интеграционный модуль RabbitMQ
Интеграция - Внешние источники данных
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Интеграционный модуль RabbitMQ
Готовое решение для обмена сообщениями между вашими системами и RabbitMQ. Работает на Windows и Linux. Открытый код. Без внешних сервисов и подвисших процессов.
Кому подходит
-
Разработчикам — для встраивания в конфигурацию.
- Аналитикам/интеграторам — для работы с очередями брокера из внешней обработки без написания кода: отправка/получение сообщений, администрирование очередей.
Как это работает
Модуль построен на процессном подходе: нет постоянно работающего сервиса, который нужно устанавливать, мониторить и перезапускать. Вместо этого каждая операция — это отдельный процесс, который запускается по требованию, выполняет работу и завершается.
Launcher — это лёгкий исполняемый файл-программа, который создаётся для каждой операции.
Core — это основной исполняемый файл-программа, который создаётся один раз в директории выполнения и переиспользуется.
Схема работы основана на паттерне Process Supervisor: родительский процесс (Launcher) запускает дочерний (Core) и контролирует его жизненный цикл.
Одновременно может работать неограниченное число процессов — каждая операция изолирована: свой Launcher, свой процесс Core, свои временные файлы. Операции не мешают друг другу.
Обмен между RabbitMQ и 1С через файл. Без сетевых соединений
Ключевые возможности
-
Отправка сообщений — напрямую в очередь или через обменник с маршрутизацией (
direct,fanout,topic,headers). -
Получение сообщений — с подтверждением (ack/nack) по каждому сообщению. Сообщение не удаляется из очереди, пока вы не подтвердите его обработку.
-
Гарантированная доставка с Publisher Confirms — это механизм RabbitMQ, при котором брокер асинхронно подтверждает публикацию каждого сообщения. Сообщение считается доставленным только после получения подтверждения (ack) от брокера; если брокер не смог обработать сообщение (nack), вы узнаете об этом и сможете повторить отправку (большинство готовых компонентов для RabbitMQ этот механизм не предоставляют — сообщение считается «отправленным» сразу после записи в сокет, даже если брокер его не принял. Это критично для сценариев, где потеря сообщения недопустима).
-
Параллельная отправка — до 20 потоков для максимальной производительности (если порядок сообщений в очереди не важен).
-
Администрирование RabbitMQ прямо из модуля — создание, удаление, очистка очередей; создание и удаление обменников; привязка и отвязка очередей; информация об очереди.
-
Кроссплатформенность — работает под Windows и Linux.
-
Открытый код — Go-исходники Launcher и Core входят в поставку. Можно изучить, изменить, собрать под свои задачи.
-
Кеширование соединений — TCP-соединение с брокером переиспользуется между операциями, что экономит время на подключение.
-
Проверка целостности исполняемых файлов — перед запуском модуль проверяет SHA-256-хеши (хеши известны заранее) Launcher и Core. Это решает две задачи: безопасность (защита от подмены бинарника) и совместимость с антивирусами (при необходимости хеши можно добавить в исключения).
-
Логирование — опционально, с записью в указанную папку. Помогает при отладке и разборе инцидентов.
Что в поставке
-
Внешняя обработка — можно использовать как внешнюю обработку или встроить в конфигурацию для программной работы с экспортными методами.
-
Go-исходники — Launcher и Core для Windows и Linux, в макетах обработки. Можно скопировать, изучить, собрать самостоятельно.
-
Подробная инструкция — установка, настройка, все экспортные методы, примеры встраивания.
Проверено на следующих конфигурациях и релизах:
- Управление торговлей, редакция 11, релизы 11.5.8.232
Вступайте в нашу телеграмм-группу Инфостарт