springwolf-core icon indicating copy to clipboard operation
springwolf-core copied to clipboard

Add multi message support for AMQP producers and consumers

Open hirth-abi opened this issue 2 years ago • 1 comments

  1. Support for multiple messages per producers was added in #59 for Kafka. Such support should be also added for AMQP.

  2. At least for AMQP multiple messages per consumer should be supported. This is available for Spring Boot with the @RabbitListener together with the @RabbitHandler annotation, see documentation.

hirth-abi avatar May 06 '22 12:05 hirth-abi

I will probably provide this in the next amqp plugin release, thanks for reporting this.

stavshamir avatar May 07 '22 10:05 stavshamir

We have low usage for amqp plugin, so we will not be able to invest time in this. If someone would like to try contributing an implementation, please let us know. Closing for now.

stavshamir avatar May 23 '23 04:05 stavshamir

Hi @stavshamir since you have now deprecated AsyncApiDocket, which was our only way to work around this missing support (and we currently don't have resources to contribute this implementation), does this mean you want to just cut off those users and we have to freeze our usage at least to the last version where AsyncApiDocket is supported?

hirth-abi avatar Nov 03 '23 10:11 hirth-abi

@timonback may be able to help. I believe one of the new additions to configuration may be able to solve your issue. You are also welcome to the discord server if it's more convenient.

stavshamir avatar Nov 03 '23 17:11 stavshamir

Hi @hirth-abi Thank you for the report as this helps us to understand which features are being used.

Our assumption is that all features of the AsyncApiDocket are available via other mechanisms as well.

You are talking about the producer configuration, right? The idea is to migrate towards an annotation based approach as documented here: https://www.springwolf.dev/docs/configuration/documenting-producers When two producer (or consumer) methods specify the same channelName, then those are merged together. This allows to define multiple payloads for the same topic.

If this turns out to be cumbersome, we can also look into alternatives. For that we would need to understand how you use Springwolf.

Does this solve your issue? If not, please open a new issue as closed issues are difficult to see for us.

timonback avatar Nov 03 '23 19:11 timonback

@hirth-abi Feel free to add more info in #445

timonback avatar Nov 10 '23 14:11 timonback