MassTransit is a free, open-source distributed application framework for .NET. MassTransit makes it easy to create applications and services that leverage message-based, loosely-coupled asynchronous communication for higher availability, reliability, and scalability.
Get started by reading through the documentation.
These templates can be used to create new projects, add consumers to existing projects, and create new sagas.
Project Template
dotnet new mtworker -n ProjectName
This template creates a new worker service project, using the in-memory transport. Once created, the item templates such as mtconsumer
or mtstatemachine
can be used to add messaging components. Use dotnet run
in the project folder to run the project and view the logs. The service will automatically discover message consumers and configure the endpoints using the kebab-case endpoint name formatter.
Project Template
dotnet new mtdocker -n ProjectName
This template creates a new worker service project, using RabbitMQ. Once created, the item templates such as mtconsumer
or mtstatemachine
can be used to add messaging components. Use docker-compose up
in the project folder to build the containers and run the project. The service will automatically discover message consumers and configure the endpoints using the kebab-case endpoint name formatter. You can open the RabbitMQ management console by navigating to http://localhost:15672/
.
Item Template
dotnet new mtconsumer -n MessageName
This templates creates a message type (MessageName), a consumer (called MessageNameConsumer), and a consumer definition with an initial message retry filter configured.
Item Template
dotnet new mtstatemachine -n StateName
This templates creates a state machine saga (called StateNameStateMachine), the state (StateNameState), an initial event message type (StateNameEvent), and a saga definition with an initial message retry filter and in-memory out box configured.
Get help live at the MassTransit Discord server.
Install the dev package
./scripts/install-dev
Uninstall the dev package, and reinstall the latest release
./scripts/uninstall-dev
Logo Design by The Agile Badger