A messaging engine is a server component that provides the core messaging function of a service integration bus. A messaging engine manages bus resources and allows applications to communicate with the bus.
Each messaging engine is associated with a server that has been added as a member of a bus. When you add an application server as a bus member, a messaging engine is automatically created for this new member. If you add the same server as a member of multiple buses, the server is associated with multiple messaging engines (one messaging engine for each bus). However, in its simplest form, a bus can be realized by a single messaging engine.
Messaging engines are given a name, which is based on the name of the bus member. Each messaging engine also has a universal unique identifier (UUID) that provides a unique identity for the messaging engine. If you delete and re-create a messaging engine, it will have a different UUID and will not be recognized by the bus as the same engine, even though it might have the same name. For example, the re-created messaging engine will not be able to access the data store that the earlier instance used. If you accidentally delete a messaging engine configuration, and save the updated incorrect configuration, you must restore the configuration from a previous configuration backup.
Each messaging engine has its own data store. A messaging engine uses an instance of a JDBC data source to interact with the database that contains the data store for that messaging engine. For further information, see Data stores.