After reading through the pub/sub project sample in MassTransit, it left me scratching my head.

In the sample, the client application publishes a request for the subscriber application to update the password of a fictitious user. This sample code works fine, and it's easy to follow the bouncing ball of this project.

HOWEVER--

In a real-world environment, the purpose of pub/sub (in my understanding) is to have a small number of publishers interacting with a large number of subscribers. In the case of a subscriber performing any sort of CRUD operation, shouldn't the communication pattern prevent more than one subscriber from handling the message? It would be less than desirable to have twenty subscribers attempt to update the same database record, for instance.

Is this just a case of a misguided sample project?

If pub/sub can be used for CRUD operations, how do you configure the framework to only allow one subscriber to perform an operation?

Am I just completely missing some basic info on the purpose of pub/sub?

Thanks for any clarification provided...

David