Reliability
The Service Platform delivers a dependable messaging infrastructure through multiple reliability layers and features
Reliable transports
A variety of reliable transports providing multiple options for transactional store-and-forward and broker pattern messaging: Azure Service Bus, Azure Queues, Amazon SQS, RabbitMQ, SQL Server, and MSMQ.
Selecting a transportException handling
Built-in exception handling logic surrounds all calls to user code. When an exception occurs, NServiceBus rolls back the database transaction and returns the message to the queue, also undoing any messages requested to be sent or published.
How to handle exceptionsAutomated retries
Automated retry built-in, configurable and highly efficient. Immediate Retries (fast retries within the transaction) and Delayed Retries (cascading delays, for 10, 20 and 30 seconds) provide an out-of-the-box way to overcome intermittent connection and availability issues.
More about retriesReliable storage
Reliable storage for failing and failed messages. Persistent storage with transactional support using Error and Retries queues, reliably stores any message that is undergoing retries or, after automated retry actions have been exhausted, stores the message in a persistent Error queue.
More about persistenceFailure notifications
Message failure notification and alerting via Production Monitoring. Near real-time indication and alerting when messages fail processing, including full message details, failure stacktrace, message context interaction visualization and more.
More about failed messagesReliable DevOps tooling
After identifying and fixing the root cause of a processing failure, Ops and DevOps personnel can send a message to be re-processed with easy to use tools.
Intro to failed message monitoringFailure detection
Endpoint failure detection and alerting via production monitoring. Endpoint heartbeat monitoring and alerting enables you to identify when an endpoint is not able to send or receive messages, raising indicator alerts and notifications.
Intro to endpoints and heartbeatsCustom checks
Define and check custom conditions that your solution depends upon, and monitor and alert when these conditions are not met using the integrated Custom Checks feature supported by NServiceBus endpoints and Particular Software production monitoring tools.
How to develop custom checksAfter our developers made the mental leap to concepts like eventual consistency, we started feeling the most significant benefits of NServiceBus: the ability to extend functionality around existing systems without having to change their internal behavior as well as being able to break apart previously monolithic applications. We found that NServiceBus absolutely lives up to its reputation of reliability in production. All in all, it's been quite a pleasure working with NServiceBus.
Carl Lindelöf - System Architect, Ebay Sweden