WCF Service Programming Design specification (6): Queue service, security, and service bus. This section collates the design specifications for queue services (queues Servuce), service security, and service bus.
Queued Services
Queue Service
1. On the client, always verify this queue (and a dead-letter queue, when applicable) is available before calling the Queued service. Use Queuedservicehelper.verifyqueues () to this purpose.
On the client side, before calling the queue service, always check that the queue is available (including confirming dead-letter queues, if available). Check using the Queuedservicehelper.verifyqueues () method.
2. Always Verify that the ' queue is available ' hosting a queued service (this is done automatically by servicehost<t >).
Always check that queues are available when managed queue services (Servicehost<t> will automatically detect)
3. Except in isolated scenarios, avoid designing the same service to work both queued and non-queued.
Avoid the use of both queue and non-queuing services in the same service, except for some isolated scenarios
4. The service should participate in the playback transaction.
The service should be involved in the playback transaction
5. When participating in the playback transaction, avoid lengthy processing in the queued service.
Avoid lengthy processing in queue services when participating in playback transactions
6. Avoid sessionful queued services.
Avoid the use of conversational queuing services
7. When using a singleton queued service, use a volatile resource manager to manage the Singleton state.
Use volatile Explorer to manage a single case state when using a single case queue service