Replies: 5 comments 22 replies
-
Beta Was this translation helpful? Give feedback.
-
Would love to see this implemented built-in perhaps with some configurable window? since it's already handling confirmations internally. |
Beta Was this translation helpful? Give feedback.
-
Okay, just to update, the branch I linked above has been updated to no longer serialize anything into the connection or channel since they have been updated to use semaphore to avoid problems with multiple tasks hitting the channel. That seemed to increase the throughput significantly, even 20% above what it was in the previous v6 client. Will continue testing. |
Beta Was this translation helpful? Give feedback.
-
Yes, I'm pretty sure that |
Beta Was this translation helpful? Give feedback.
-
Can this discussion be closed or is there anything left to discuss? |
Beta Was this translation helpful? Give feedback.
-
I'm sharing this as an initial pass, but from my testing there is a pretty major degradation with my first pass migration to the v7 client. I think it's related specifically to how the confirmation tracking is working. I've looking through the code and the MaybeTrackXxxx methods and it seems fairly straightforward. I also removed all confirmation tracking from MassTransit since it would essentially duplicate what you're doing.
My branch is here: /~https://github.com/phatboyg/MassTransit/tree/rabbitmq-client-v7
If you go into the tests/MassTransit.Benchmark project folder, and have RabbitMQ running accessible to
localhost
, you can type:If you compare the
develop
branch to therabbitmq-client-v7
branch, you can see some pretty wide variation in the message throughput.This is the original v6 client:
This is the new v7 client:
I'm open to suggestions/thoughts on where I could look, but I'm reluctant to upgrade MassTransit and impact customers with this drastic of a change.
Beta Was this translation helpful? Give feedback.
All reactions