How Billing Message Usage is Calculated Based on Feature
When you use certain features in Oracle Integration, billing messages are consumed by your instance. This might be obvious for things like sending data with integrations, but it also includes features like extended data retention and disaster recovery.
Your instance should include enough message packs to support your billing message usage to ensure smooth, scalable, and resilient day-to-day operations. See Estimate Message Pack Usage for a Metered Tenancy.
The number of message packs you subscribe to can also affect the processing time of synchronous requests. See Message Pack Usage and Synchronous/Asynchronous Requests.
Review the following sections to see how billing message usage is calculated.
Common Message Consumption Rules
The following rules apply to message consumption in all Oracle Integration components.
| Rule | Description |
|---|---|
| Triggers and invokes |
Triggers and invokes are generally counted as 1 message with a few exceptions. For example:
|
|
Internal calls |
Internal calls within the same component aren't counted as messages. For example, the following aren't counted:
However, an integration in one Oracle Integration instance calling an integration in another Oracle Integration instance does incur messages in the target Oracle Integration instance. |
|
Message payloads over 50 KB |
For message payloads over 50 KB, 1 additional message is counted for each additional 50 KB. For example, if a message payload is 102 KB, 2 additional messages would be counted. |
Integration Message Consumption
Follow these rules to determine how message consumption is calculated.
| Rule number | Rule | Description |
|---|---|---|
|
1 |
Trigger |
Each trigger activity counts as at least one message, up to 50 KB inbound. If the inbound message payload exceeds 50 KB, 1 additional message is counted for each additional 50 KB. |
|
2 |
Invoke |
Invoke requests don't count as messages, but invoke responses over 50 KB count. If the message payload exceeds 50 KB, 1 additional message is counted for each additional 50 KB. |
|
3 |
File |
For file based scheduled flows where there are incoming files into integrations, each file is converted into a billed message (in multiples of 50 KB) only when the size is greater than 50 KB. |
|
4 |
Internal |
Integration to integration calls within the same Oracle Integration instance aren't counted. However, calling another Oracle Integration instance does incur messages in the target Oracle Integration instance. |
Integration Message Consumption Examples
This table shows by example how message billing is calculated and the rules that apply.
| Integration Type | Scenario/Flow | Billing Message Calculation | Rules That Apply |
|---|---|---|---|
|
Sync/Async (Trigger) |
|
Payload size is considered at trigger. ceil(120/50) = 3 messages |
#1 (Trigger) |
|
Sync/Async (Trigger) |
|
Payload size is considered at trigger. Any subsequent response greater than 50 KB is also tracked. In this scenario, only files greater than 50 KB are considered. ceil(70/50) + ceil(170/50) = 2 +4 = 6 messages |
#1 (Trigger) #3 (File) |
|
Sync/Async (Trigger) |
|
Payload size is considered at trigger. Any subsequent response greater than 50 KB is also tracked. ceil (20/50) = 1 message |
#1 (Trigger) |
|
Sync/Async (Trigger) |
|
Payload size is considered at trigger. Any subsequent response greater than 50 KB is also tracked. ceil(10/50)+ ceil (70/50) + ceil(100/50) = 1+2+2 = 5 messages |
#1 (Trigger) #2 (Invoke) #3 (File) |
|
Sync/Async (Trigger) |
|
Payload size is considered at trigger. Any subsequent response greater than 50 KB is also tracked. Since the trigger is just a GET request with no payload, it's considered 1 billed message. 1 message |
#1 (Trigger) |
|
Scheduled flow |
|
Each invoke/file is considered in multiples of 50 KB when response data is more than 50 KB. ceil(170/50) = 4 messages |
#3 (File) |
|
Scheduled flow |
|
Each invoke/file is considered in multiples of 50 KB when response data is more than 50 KB. Not counted. |
None |
|
Scheduled flow |
|
Each invoke/file is considered in multiples of 50 KB when response data is more than 50 KB. ceil(130/50) = 3 messages |
#3 (File) |
|
Scheduled flow |
|
Each invoke/file is considered in multiples of 50 KB when response data is more than 50 KB. ceil(100/50) = 2 messages |
#2 (Invoke) |
|
Scheduled flow |
|
Each invoke/file is considered in multiples of 50 KB when response data is more than 50 KB. Not counted. |
#4 (Internal) None counted |
|
Child Integration flow |
|
Integration child flow invoke is waived from metering. Not counted. Note that the parent may count. |
#4 (Internal) None counted |
|
Child Integration flow |
|
Integration child flow invokes are waived from metering. Any subsequent response is metered. Each child = ceil(70/50) = 2 messages Note that the parent may count. |
#2 (Invoke) |
Extended Data Retention Message Consumption
By default, Standard and Enterprise edition instances retain data for 32 days, and Healthcare edition instances retain data for 184 days. If you have an Enterprise edition instance, you can extend the data retention period if you want.
You can't change the retention period for Standard or Healthcare edition instances.
Adding extended data retention increases your hourly message consumption by the percentage listed in the following table. This increase applies to your hourly totals for incoming and outgoing messages for trigger and invoke requests.
| Extended data retention period | Additional message consumption for data retention | Example calculation of total hourly message consumption |
|---|---|---|
| 93 days (3 months) | +10% | 3,000 messages + 300 messages for data retention = 3,300 total messages |
| 184 days (6 months) | +20% | 3,000 messages + 600 messages for data retention = 3,600 total messages |
Caution:
If you later decrease your data retention period, any data older than the newly selected period would be deleted when you save your selection.Disaster Recovery Message Consumption
Oracle provides a disaster recovery solution that allows you to fail over quickly from natural or human-made disasters and provide business continuity in your secondary region. You can also use this solution for planned migrations and switch between regions periodically. Oracle manages nearly all disaster recovery responsibilities automatically for you. Your administrative responsibilities are minimal.
You can add disaster recovery to Enterprise or Healthcare edition instances.
Adding disaster recovery increases your message pack consumption based on your existing message pack consumption. Existing message pack consumption is the number of message packs consumed by integrations, data retention, Process Automation, decisions, and robotic process automation.
| Existing message pack consumption | Additional message pack consumption for disaster recovery | Example calculation of total message pack consumption |
|---|---|---|
| 1-3 message packs | +1 message pack | 2 message packs + 1 message pack = 3 message packs |
| 4-8 message packs | +2 message packs | 6 message packs + 2 message packs = 8 message packs |
| 8+ message packs | +3 message packs | 12 message packs + 3 message packs = 15 message packs |
Additional Message Consumption for Optional Features
Oracle Integration includes several technologies and services that you can enable for additional features.
This table shows the additional message consumption when you enable optional features.
| Feature | Additional message consumption |
|---|---|
|
Metering tracks the number of concurrent, unique users interacting with Visual Builder apps within a 1 hour interval. These Visual Builder users are converted to message usage. One Visual Builder user per hour is equivalent to 100 messages per hour. |
|
|
|
|
|
|
Message Consumption Example for a Metered Tenancy
The following tables show an example of message consumption calculations for a metered tenancy (using universal credits).
Message Consumption by Component
The first step is to determine the messages consumed by each component and then calculate the total messages consumed by all components.
| Component | Component consumption | Conversion to messages | Messages consumed |
|---|---|---|---|
|
Integrations |
9,000 messages |
x 1 |
9,000 |
|
Extended data retention |
6 months |
x 20% |
1,800 |
|
Process Automation |
|
x 1 |
1,900 |
|
Decisions |
1,400 decision invocations |
x 1 |
1,400 |
|
Robotic process automation |
|
x 1 |
1,300 |
|
Message total |
N/A | N/A |
15,400 |
Message Pack Consumption
The next step is to figure out the total message packs needed to cover the message total.
| License type | Messages per pack | Number of packs consumed |
|---|---|---|
| New Oracle Integration license in the cloud | 5,000 | 4 |
| Existing Oracle Fusion Middleware license to the cloud (BYOL) | 20,000 | 1 |
Message Pack Consumption for Disaster Recovery
Optionally, if you've set up disaster recovery, you need to add the appropriate number of message packs for disaster recovery.
| License type | Number of message packs consumed | Number of message packs for disaster recovery |
|---|---|---|
| New Oracle Integration license in the cloud | 4 | 2 |
| Existing Oracle Fusion Middleware license to the cloud (BYOL) | 1 | 1 |
Total Message Pack Consumption
Finally, you add everything up to get your total message pack consumption.
| License type | Number of message packs consumed | Number of message packs for disaster recovery | Grand total |
|---|---|---|---|
| New Oracle Integration license in the cloud | 4 | 2 | 6 |
| Existing Oracle Fusion Middleware license to the cloud (BYOL) | 1 | 1 | 2 |