To understand the event-based architecture pattern, it is very important to go through the definition of event sources and event handlers. In the following section, we will describe the role of event sources, event middleware, and event listeners, and see how we can work effectively with these foundational blocks to build an enterprise-wide integration solution powered by events.