We have several systems that we’re going to switch to use some type of reliable architecture and using messaging is how we want to do it.
The thought is that we’re going to use some cheap hosting (shared, not dedicated) to make calls but we need the calls to be reliable. If the destination server is not available, the message must be retried a few times before failing.
Web page is accessed > site adds a request to the queue > message is delivered to target end point
Is this do-able with shared hosting? What are other options if WCF + MSMQ wont work?
In a shared hosted environment it’s up to the host if they will allow you to use MSMQ (or even rabbitQ which you wont be able to install yourself).
WCF over MSMQ works by WCF writing a message to a queue then MSMQ handles delivery of the message to the target and then it activates WCF with the message just as if you’re calling it via SOAP.
Bottom line is: You will need to check if your host will allow message queues. If they do, make sure you add security to them so other sites on the server can’t access them.
If MSMQ isn’t installed on the server then you can’t use net MsmqBinding