【发布时间】:2021-11-28 15:24:52
【问题描述】:
我阅读了 rabbitmq 教程,非常喜欢 topic exchanges 的想法。在我的架构中,我会有像continent.city.street 这样的主题。正如你所想象的那样,只有有限数量的大陆,但几乎无限的城市和街道,它们都可以有重复的名称(如NorthAmerica.GeorgsTown.Mainstreet、Europe.GeorgsTown.Mainstreet、Asia.NewTown.Mainstreet 和 Australia.NewTown.LostRoad)
现在我了解到Masstransit,一个我想学习/使用的库,does not support this kind of topics。 (有某种支持,但我也可以使用通用的 RabbitMq 客户端)
那么,实现类似事情的最佳方式是什么,例如rabbitmqs主题交换,但使用Masstransit(通过(任何)MQ/rider系统),性能?
一些可能对性能产生影响的事实:
- 几乎没有消费者对整个大陆感兴趣 - 但有些人对此感兴趣。
Asia.*.* - 各大洲的主要目标是让城市变得独一无二(在这个虚构的案例中)。
- 大约 30% 的消费者愿意订阅城市
大陆或街道。
*.GeorgsTown.* - 大约 30% 的消费者愿意
知道在特定街道上会发生什么,无论是城市还是大陆。
*.*.Mainstreet - 大约 30% 正在关注特定组合,例如
Antarctica.GeorgsTown.Mainstreet
【问题讨论】:
标签: c# message-queue masstransit rabbitmq-exchange