Hi Luke,
Questions are good, no worries about that. Please keep them coming if you have more. Also glad you liked the book. And even though you say you haven't used NSB, you seem to have a very firm grasp of messaging and SOA. You seem like a very quick learner.
You're absolutely right to query the behaviour you noticed. It's definitely not correct. As you seem to be aware, the main point of SOA/messaging/queues is to increase fault tolerance. Basically, the PaymentAccepted component/service should be getting those messages.
The publisher of those events knows that the PaymentAccepted component is a subscriber. Therefore, it should continue to try and publish the event until it succeeds, or after a certain number of times puts it on the error queue. You could try that - looking on the error queue. Let me know if it is there.
Alternatively, you could switch to the version of NSB used in the book and check it works on your machine. It could be some default configuration settings that have changed in versions.
In a production environment you would deploy as a Windows Service, but you would use the NSB self host:
http://docs.particular.net/nserviceb...rvicebus-host/ that makes life a bit easier.
Speak soon