mdevilliers / SignalR.RabbitMq

MessageBus implementation using RabbitMq as the backing store.
MIT License
89 stars 40 forks source link

Proposed solution for Issue #32 #33

Closed dfschwabe closed 9 years ago

dfschwabe commented 9 years ago

Hi Mark, I believe this branch resolves an issue I encountered. I have attempted to preserve the behavior of Lazy while eliminated exception caching. Please let me know if adjustments are in order.

mdevilliers commented 9 years ago

Hey,

This looks really good and I appreciate the work you have done - good clean code.

I want to just spend some time checking how the MessageBus itself copes with being called multiple times e.g. is there a chance of it receiving the message multiple times ect. I suspect this isn't the case but would just like to check.

Do you have a test (manual or otherwise) that you use to check the error conditions?

Thanks again,

Mark

dfschwabe commented 9 years ago

Hi Mark, good point, we wanted to verify this too and found that while the secondary fanout exchange sometimes contained extra queue bindings, signalr messages were not being received in duplicate by our application. But please do verify.

Our manual test for the error condition was to: 1) stop the rabbitmq-server service 2) attempt to resolve IMessageBus from IDependencyResolver and receive and exception 3) start the rabbitmq-server service 4) successfully resolve IMessageBus from IDependencyResolver

mdevilliers commented 9 years ago

Verified - perfect!

I'll merge in asap and update the nuget package.

Thank you very much again for your time.

Mark