docs/en/framework/infrastructure/event-bus/index.md
//[doc-seo]
{
"Description": "Learn about ABP Framework's Event Bus, its types, and guidance for choosing between local and distributed messaging in your applications."
}
An event bus is a mediator that transfers a message from a sender to a receiver. In this way, it provides a loosely coupled communication way between objects, services and applications.
ABP provides two type of event buses;
You may confuse which event bus to use in your application. Here, a few example scenarios:
The distributed event bus works in-process by default. Unless you don't configure a real distributed event bus provider, it works just like the local event bus. Once you configure a real distributed event bus provider, all your events become distributed.
So, you use the local event bus only if you an event should always remain in-process in any scenario. For other type of events, use the distributed event bus.
There are some technical differences between the local and distributed event bus:
These differences are because of the distributed event bus supports distributed scenarios while the local event bus is only used for in-process messaging. When you don't set up a real distributed event bus provider, these differences are not valid.