Cloud DMS for RabbitMQ использует RabbitMQ в качестве механизма обмена сообщениями. В RabbitMQ сообщения отправляются производителями, сохраняются в очередях и получаются потребителями. Ниже объясняются базовые концепции RabbitMQ.
Сообщение состоит из тела сообщения и метки. Тело сообщения, в формате JSON или других форматов, содержит содержимое сообщения. Метка лишь описывает сообщение.
Сообщения отправляются производителями и извлекаются потребителями, однако производитель и потребитель не связаны напрямую.
Производитель — это приложение, которое отправляет сообщения в очереди. Затем сообщения доставляются в другие системы или модули для обработки в соответствии с договорённостями.
Потребитель — это приложение, которое получает сообщения. Потребители подписываются на очереди. При маршрутизации в очередь сохраняется только тело сообщения, поэтому потребителями будет потребляться только тело сообщения.
Очередь хранит сообщения, отправленные производителями, и ожидает их получения потребителями. Если разные потребители подписываются на одну и ту же очередь, сообщения в этой очереди будут распределяться между потребителями.
Узлы, предоставляющие услуги посредничества сообщений.
Виртуальные хосты обеспечивают логическое разделение обменов, очередей и привязок. Разные приложения работают на разных виртуальных хостах, не вмешиваясь друг в друга.
Обмены получают и распределяют сообщения. Продюсеры отправляют сообщения в обмены сначала, а не напрямую в очереди. Обмены маршрутизируют сообщения в одну или несколько очередей на основе ключей маршрутизации. Если подходящие очереди отсутствуют, сообщения отбрасываются. Чтобы узнать о типах обменов, см. Exchanges.