We want to use NSB (NServiceBus) for our app development. We have a bunch (~6) of services that will get hooked into the NSB and where publish/subscribe pattern makes perfect sense. However, there is a configuration service also, where we need a simple request/reply (full duplex) pattern to get configuration data (settings, permissions, etc) from either a local DB a central remote DB server.
So the client would request the config data and immediately get a result back, which is illegal (according to the manual) when using the NSB with a pub/sub setup.
Is there a way to do this using NSB anyway,without losing the cool features such as SLR and fault tolerance, error queues, etc.? Or would I just have to circumvent the NSB altogether and create a simple WCF service instead?
Thank you.
Yes, you can use both publish/subscribe and full-duplex request/response messaging together in a given solution - that's fine.
All that being said, for the specific example that you gave, I'd model it differently.
I'd consider using a configuration component (rather than "service") which can be called in-process. This DLL would make the call to the database and really the only thing dealing with remote calls is whether the connection string points to the local machine or a remote one.