Platform NuGet packages

This page contains a curated list of NuGet packages commonly used to build a distributed system with NServiceBus and the Particular Service Platform.

Every endpoint references the core package, which provides the messaging, routing, and recoverability behavior that the other packages extend:

Transports

The transport is the messaging infrastructure that carries messages between endpoints. Each endpoint is configured with one. See selecting a transport for help choosing:

Persistence

Persistence stores saga state and outbox data, and supplies subscription or delayed delivery storage for transports that have no native support for them. See selecting a persister for help choosing:

Hosting

These packages integrate NServiceBus with a .NET generic host, a serverless platform, or the Microsoft.Extensions abstractions:

Serialization

The serializer controls the wire format of message bodies. The System.Text.Json and XML serializers ship in the core package, so a separate package is only needed for another format:

Monitoring

These packages send health, metrics, and audit data to ServiceControl, so that ServicePulse can report on the running system:

Interoperability

These packages connect endpoints to systems running on a different transport, on another messaging technology, or outside the platform entirely:

Other

Optional features that extend endpoint behavior. Packages nested below another package extend it and are chosen to match the persistence or storage already in use:

Tooling packages

These ship as .NET command-line tools for one-off migrations, rather than as packages referenced by an endpoint:

Related Articles