views:

275

answers:

1

We are hosting a net.msmq service in IIS7. The queue is transactional.

Messages arrive in the queue and are picked up correctly by the service. If an exception occurs, message is put into the retry queue.

The retry delay is set to 1 hour, however when this time elapses the message is not "re-tried".

If we browse to the .svc or send another message to the main queue then the retry messages are also picked up.

So basically messages get stuck in the retry queue until somethin "boots up" the site pool again.

has anyone come across this same problem?

A: 

Sounds like your service's AppDomain is getting unloaded due to inactivity. That's always a pain in the neck with anything hosted in IIS, and usually the solution is to create something that will keep the AppDomain alive by pinging it every few minutes (you could easily expose a second MSMQ-based endpoint on your service and just send a message to it every ten seconds on so to keep it alive).

tomasr