В документации для MassTransit Event Hub Riders рекомендуется использовать IEventHubProducerProvider
(часть пакет MassTransit.EventHub
nuget) для отправки сообщений в EventHub. Однако большая часть документации MassTransit предполагает, что при публикации сообщения от потребителя сообщений разработчик должен использовать ближайший экземпляр конечной точки публикации для публикации сообщения. В моем приложении я хочу разместить один и тот же MassTransitStateMachine
в двух разных контекстах:
- Если он использует шину в памяти, и все сообщения между ним и другими производителями и потребителями являются частью одного и того же процесса.
- Где он использует райдер Event Hub для получения и публикации сообщений.
На мой взгляд, самая чистая реализация этого могла бы отложить всю конфигурацию того, где опубликованное сообщение попадает в конфигурацию шины, и вообще не зависеть от MassTransit.EventHub
в потребителях сообщений. Это заставило меня задать вопрос, могу ли я публиковать сообщения с помощью ConsumeContext и сообщение попало в EventHub? Или я должен полагаться на IEventHubProducerProvider
(или, может быть, предоставить свою собственную реализацию этого в памяти, которая использует ConsumeContext под капотом?)
Любые инструкции о том, как это сделать, будут оценены. Похоже, что IEventHubProducerProvider
не соответствует рекомендациям производителей, но более вероятно Я просто чего-то не понимаю.