In-Process
Memory-based transport for testing and local development with Nimbus
The In-Process transport is a memory-based implementation with no external dependencies. It supports all Nimbus message patterns and is ideal for unit tests, integration tests, and local prototyping — letting you develop against the full Nimbus API without running any infrastructure.
Not for production. Messages are not persisted and cannot be shared across processes or machines.
Installation
The In-Process transport is included in the core Nimbus package:
dotnet add package Nimbus
Quick Start
using Nimbus;
using Nimbus.Configuration;
using Nimbus.Infrastructure;
var bus = new BusBuilder()
.Configure()
.WithNames("OrderService", Environment.MachineName)
.WithTransport(new InProcessTransportConfiguration())
.WithTypesFrom(typeProvider)
.WithAutofacDefaults(container)
.Build();
await bus.Start();
No connection strings, no servers, no configuration needed.
Switching to a Production Transport
Because Nimbus abstracts the transport, you can swap In-Process for a real transport without touching any application code:
// Development
.WithTransport(new InProcessTransportConfiguration())
// Production
.WithTransport(new AzureServiceBusTransportConfiguration()
.WithConnectionString(connectionString))
Your handlers, message classes, and send/publish calls remain unchanged.