Where: This change applies to Lightning Experience and Salesforce Classic in Enterprise, Performance, Unlimited, and Developer editions.
When: High-Volume Platform Events is generally available as of January 15, 2019.
Why: Choose the platform event type that suits your business needs. For applications that receive several million events per day, you can now create high-volume platform events. We recommend that you choose high-volume platform events because they offer better scalability than standard platform events.
How: You can define a high-volume platform event from the user interface or through Metadata API. From the UI, in Setup, enter Platform Events in the Quick Find box, then select Platform Events. When completing the standard fields, select High Volume for Event Type.
In Metadata API, the event definition is represented in the CustomObject type with eventType set to HighVolume.
Publish and subscribe to high-volume platform events in the same way that you publish and subscribe to standard-volume platform events. You can use declarative tools, such as Process Builder and flow, or write code with Apex and CometD API apps.
High-volume platform events are published asynchronously so that the system can process high loads of events efficiently. The publishing call places the publish request in a queue. The event message might not be published immediately after the call returns, but it is published when system resources are available. High-volume events are stored for up to three days, and stored events can be replayed.
Usage-Based Event Entitlements
Each Salesforce edition provides a default allocation for the number of high-volume events delivered to CometD clients. The default allocation is enforced daily to ensure fair sharing of resources in the multitenant environment and to protect the service.
You can purchase an add-on license to increase your daily CometD event delivery allocation. With the add-on license, the CometD event delivery allocation depends on your monthly entitlement and scales with it. With the add-on, you can exceed the daily-equivalent allocation of the monthly entitlement by a certain amount for a 24-hour period. Event overages are calculated for a calendar month, starting with the first day of the month or your contract start date.
Monitor your high-volume event delivery usage and entitlement with the limits REST API resource.
The usage-based entitlements don’t apply to subscribers that don’t use CometD, including Apex triggers, processes, and flows.