Considerable throughput improvements can be expected for BPE processes that fulfill the following prerequisites:
● Many messages received for each process instance
● The messages that are sent to a process instance arrive together in a relatively short time period
● Generally high load on the process type
Message packaging is intended primarily for scenarios with high loads. These are scenarios in which there is a throughput of a large number of messages. For this reason, the user needs to check for each process type, whether it makes sense to activate message packaging. The scenarios that particularly profit from message packaging are the "collect scenarios". This includes the following two scenarios: Collecting and Bundling the Messages of One Interface and Collecting and Bundling the Messages of Multiple Interfaces
Since message packaging can increase the time between when individual messages are received and processed, it is not intended for scenarios in which it is important that individual messages are processed quickly.
Using message packaging in BPE can have the following advantages:
● Increase throughput
● Reduce the required computer time
● Reduce the amount of space required on the database for the runtime data of the integration process
● This has a positive effect on the reorganization of the data and therefore on archiving as well.
The computing time required for the delivery of each message is reduced. This means that the maximum possible throughput, that is, the number of messages that can be processed in a specific amount of time, can increase significantly depending on the scenario.
Reasons for this performance improvement are:
● The one-off computing time overhead to prepare a message for processing is distributed across multiple messages. The following steps are required just once for multiple messages:
○ Reading of definition data
○ Reading of configuration data
● Since multiple messages are processed in each transaction, the amount of data to be persisted is reduced:
○ Less message data since multiple messages are persisted in one package
○ Less process instance data because, for example only one integration process status must be saved for multiple messages in one package
The greater the number of messages in a message package, the greater the performance improvement for each message. A high message load on the system memory supports the creation of large message packages and therefore leads to a particularly large improvement in performance and throughput. The amount of memory required is reduced significantly.
The ability to send multiple messages within one transaction to a process instance can drastically reduce the database space needed for the process instances. This is because a work item does not need to be created for every receive step in the process. Instead, these work items are only created for those receive steps that are still active (receptive) at the end of the transaction.
Messages that are delivered using message packaging can have a longer actual runtime in inbound processing. This latency has the following reasons:
● Message wait time until an appropriate message package can be produced (configuration-dependent)
● The packaging job periodically accesses the messages to be processed and therefore has its own latency