Исходя из Java фона, при разработке служб, связанных с JMS, я использовал для обработки сообщений и различал guish их путем проверки их типа, например (упрощенно):
Object object = myQueue.consume();
if (object instanceof MessageA) {
processMessageA((MessageA) object)
} else if (object instanceof MessageB) {
processMessageB((MessageB) object)
}...
Поэтому сейчас я создаю интерфейс обмена сообщениями для некоторых модулей Python в RabbitMQ (topi c коммуникация). Я планирую использовать одну очередь для каждого потребительского модуля, на который будет приходить разных сообщений .
У меня есть почти все, но я все еще борюсь с обработкой ( потребляющий) сообщений. Как бы вы различали guish между типами сообщений?
Я думал о наличии пользовательских JSON заголовков, но я не знаю, правильно ли это.