Event streaming: Events are written to a log. Add to Trailmix. With these concepts in mind, different types of application architectures become possible. Use platform events in the following cases: This table compares the features of generic events and platform events. Say a news agency called Cloud News sends events to subscribed clients with the latest breaking news about traffic and road conditions in a mountain retreat destination. Platform events are the event messages that your apps send and receive. They are two of the components of an event-driven architecture. Event-based communication takes place in real-time—or, more accurately, in near-real time. To be able to understand this module, you should be familiar with at least one of these technologies. First things first: let’s review the Platform features that make event-driven application architectures possible. has the assigned task been completed or not? Here is a list of a trail and modules you can take to learn Apex. This team was readily and thankfully supported by a broader team of Salesforce Trailblazers, including Jay Hurst, John Brock, Gaytri Khandelwal, Arastun Efendiyev, and the Developer Evangelist and Content teams. Thanks for subscribing. Explain the benefits of an event-driven software architecture. But how then does the Salesforce Customer 360 Platform support this pattern for your applications? Just like custom objects, you define platform events in Salesforce. It allows the developers to deliver secure, scalable and customizable event notifications within the Salesforce platform or from external sources. Subscribe to Platform Events ~20 mins. He's interviewing Alexey Syomichev, a software engineering principle architect at Salesforce, with over 25 years of experience. When an event is published, it sends the event to each subscriber. List the components of event-based software architecture. Event-driven architectures are very different in that they are designed to loosen the tight coupling between internal services. The Salesforce enterprise messaging platform offers the benefits of event-driven software architecture. In the Lightning Platform API Basics module, we use the analogy of radar on a pirate’s ship to represent event detection. Salesforce Event Driven Architecture is the new way of implementing business logic by leveraging High Volume Platform Event. When a lead is assigned in Salesforce, a lead trigger fires and checks open opportunities and cases related to the lead owner. Eventing can also be useful in Flows, where you can leverage events to kick off flows and have flows themselves connect to one another through events rather than through direct interaction. For Salesforce this has resulted in the implementation of new platform capabilities that are exposed to customers, namely platform events and Change Data Capture. When an opportunity closes, a trigger, which is part of a product order app in Salesforce, fires and publishes a platform event message. Read writing about Event Driven Architecture in Salesforce Engineering. We’d love to highlight some additional architectures in the future—maybe even with a public webinar for a broader show-and-tell of your solutions, strategies, and successes. An event-driven (or message-driven) software architecture consists of event producers, event consumers, and channels. Even in the best-case scenario, we’ll have many different code references to external, dependent classes in order to deal with the specific update logic given the entire org’s Trigger automation around Account object updates. In the second scenario, an external product app notifies Salesforce of merchandise returns. First, Simon introduces us to the concept of event-driven architecture, or EDA, and its potential benefits, and discusses some of the challenges of depending on external message queue … Get the latest stories from the Salesforce blog, every week. Clearly, event-driven architecture has a number of benefits. Publishers and subscribers communicate with each other through events. In fact they have been around for a while in the forms of different implementations and tools. The external app listens to platform events. Various trademarks held by their respective owners. The architecture is suitable for large distributed systems because it decouples event producers from event consumers, thereby simplifying the communication model in connected systems. The following diagram illustrates an event-based software architecture. Custom platform events are similar to custom objects and they have standard and custom fields that we can use to send data with the event to the event consumers. The external system publishes a platform event to alert Salesforce to the merchandise return. Using the above platform capabilities, you can now begin to tackle various parts of your application design with event-driven architecture in mind. In this scenario, you can perform the same actions using other Salesforce features, such as Process Builder or flows. Radio waves travel at the speed of light, but event-based software and hardware systems typically have some latencies. For a comparison of more event types, see Streaming Event Features in the Streaming API Developer Guide. In this case, we isolate the application logic for the very specific record processing purpose (say, generating a PDF from the update) to the trigger on a Platform Event we’ve defined specifically for this purpose (e.g., Account_Update_For_Purpose_A__e). An external system sends merchandise return requests to Salesforce for processing. This coupling can become very problematic as your app scales and becomes more substantial. With platform events, you can monitor your systems and communicate changes to other systems. As you can see, there is a lot of flexibility in how you choose to use Platform Events! Event-based architectures are built with three core concepts in mind: In the context of an app built on Salesforce, producers and consumers do not need to live outside of the Platform! Get notified when we publish new updates. Platform Events enables a new event-driven architecture for the Salesforce App Cloud focused on events and record changes, rather than full record processing. And the resulting services for producing and consuming can then be made simpler, removing unnecessary interaction code. Let’s dig into a practical example of this particular approach. This exchanges a mastered (unique version) customer record and related data, such as employment and credentials, between the MDM system and Salesforce. Complimentary to other tools and patterns the Platform supports, this new infrastructure gave way to a loosely-coupled, event-based integration pattern that you have adopted. There are a ton of benefits to moving from traditional record processing and triggers to event-based ones. Understand Event-Driven Software Architecture, Platform to External App: Order Fulfillment in a Vendor App, External App to Platform App: Process Merchandise Returns in Salesforce, Platform to Platform: Reassign Lead Records, Using Platform Events in Native and External Apps, Differences Between Platform Events and Other Streaming Events, Publish declaratively using Process Builder and Flow Builder. Incomplete. While doing its work, a given class calling other classes’ functions must understand what those external functions expect as input. Let’s say you use vendors to ship products associated with an opportunity. We know you're eager to get started! You grant permissions to users in profiles or in permission sets. An EDA decouples event message consumers (subscribers) from event message producers (publishers), allowing for greater scale and flexibility. This architecture is built around the concept of events. The Goddess of Sunlight Gwynevere, daughter of the great Lord of Sunlight Gwyn, is cherished by all as the symbol of bounty and fertility. Event Driven Architectures with Platform Events (2) With the growing number of enterprise solutions in a business ecosystem, traditional record-centric design patterns become difficult to manage. The contents of those events are not just the news items themselves but also related details such as whether a piece of news is urgent, and the location of the incident. Async Apex allows you to write Apex code that can be processed, well, asynchronously : ) The same holds for Callouts to external systems with Async Callouts. Platform Events enables a new event-driven architecture for the Salesforce Platform focused on events and record changes, rather than full record processing. It shifts the responsibility of processing onto the responding service rather than the requesting service. Robert Blumen is a Dev Ops engineer at Salesforce. So what’s involved in adapting to the new approach? In smaller apps, this dependency chain may not be all that difficult to manage. Back in April, Frank Caron wrote a blog post describing the power of EDAs. Of course, the use of platform events isn’t restricted to a news agency. With the growing number of enterprise solutions in a business ecosystem, traditional record-centric design patterns become difficult to manage. This article was put together in collaboration by folks in the Technical Architecture team at Salesforce who love digging into app architecture patterns and working with customers to push what’s possible with the Salesforce Customer 360 Platform. Producers and consumers of those events can be teased apart from one another. As experienced Salesforce Devs can attest to, this can lead to some real headaches in maintaining and scaling Trigger code as your org grows. Now that you have an idea of when to use platform events, let’s dive deeper into their components and characteristics. This architecture approach is considered “loosely coupled” because the underlying components of the app are not directly communicating with one another (or, in other words, are not “tightly coupled”). We'll explore data ingestion use cases and Heroku's ability to serve as a data processing hub for the Salesforce Platform. This alternative approach to app architecture can offer a ton of advantages to developers of all types and skill levels. Add to Favorites. By using events to drive Flows, you can achieve some really valuable separation of concerns and stepwise refinement of your Flows. Platform Events enables a new event-driven architecture for the Salesforce Platform based on events and record changes. Much like radio transmission, event-based communication flows from the sender to the receiver. In Salesforce events are quite useful since they help both the admin and client, e.g. With the release of Platform Events in 2017, we provide to Salesforce Developers a scalable infrastructure for event-based integration. Event driven architecture is the new black. Let’s say someone wants to return purchased merchandise to a vendor. To be able to perform the hands-on challenge in this module, you should have knowledge of Apex triggers. Subscribers can receive these events and determine what actions to take based on the urgency of the news. This also allows one-to-many and many-to-one distribution of data between loosely-coupled services. But before you settle in to work through this module, you should be familiar with some concepts to be able to complete this module. A platform event is a special kind of Salesforce entity, similar in many ways to an sObject. Understanding Event-Driven Software Architecture: Event is basically a thing that happens or takes place, especially one of importance. Platform Events enables a new event-driven architecture for the Salesforce Platform focused on events and record changes, rather than full record processing. This architecture is built around the concept of events. Here is a sample definition of custom fields for a news event for the Cloud News agency. In these scenarios, Salesforce and external systems communicate through platform event messages. You create a platform event definition by giving it a name and adding custom fields. event-driven architecture on the Salesforce Customer 360 Platform). You can also handle triggers asynchronously thanks to Platform Events by creating events from an object trigger and then adding trigger logic to the event itself (rather than the object). External apps publish events using the sObject API and consume events using CometD. But with platform events, there are two parties to the communication: a sender and a receiver. Describe use cases for the Platform Events feature. The paradigm of event-based communication revolves around a publisher-subscriber model—a sender broadcasts a message that one or more receivers capture. Apps on the Salesforce platform use an Apex method to publish events and an Apex trigger or the empApi Lightning component to consume events. The two components of EDA are: event creators and event consumers. By leveraging events for record processing and trigger logic, you can simplify the management and maintenance of triggers across objects by centralizing the processing code, and where it makes sense, processing trigger logic post-commit. Available on these trails. Before we go any further, let’s define some terms. They simplify the process of communicating changes and responding to them without requiring you to write complex logic. In practical terms, an event is any action that should drive a change to the overall application state, including the likes of…. In a traditional trigger, our logic is tightly coupled with the record insert or update process for a given record: In this case, we have a single chokepoint for all of the application logic relating to any and every record update that might affect Accounts. © Copyright 2000-2020 salesforce.com, inc. All rights reserved. Every UI interaction or data processing request can be reframed as an event. That same class must also understand when to invoke those specific external classes, too — and what might happen afterward. Based on the event information, the app reassigns the lead and creates a Chatter post. You define the schema of event data at a granular level as typed fields. Other events include PushTopic and generic events. Expanding the event-driven architecture of the Salesforce Platform. Generally, this approach is considered “tightly coupled”. All this sounds good, but what are some real-world cases when you can use platform events? An event message is an instance of a platform event, similar to how a record is an instance of a custom object. In EDA, no requests … Platform events capability is based on event-driven messaging architecture which enables Salesforce to send out information to external system when event occurs or consume event published by external system. A future context can’t again call out in the future, for example. Implementing Event-Driven Architecture with MuleSoft and Solace PubSub+. As an alternative to code, you can publish events with declarative tools, such as Process Builder and Flow Builder. In short, there are a number of clear benefits: These benefits are precisely what has driven many software development companies and software developers to adopt and leverage this pattern—including Salesforce ourselves! The reality of supporting production event-driven architecture at any reasonable scale is that it can be challenging, especially when dealing with bad events and unhappy paths, both of which affect business operations and the customer experience. Do your printer cartridges need replacing? Whatever you want to be notified about, the Salesforce enterprise messaging platform provides the delivery of secure and scalable custom notifications within Salesforce and from external sources. Built on top of Platform Events, Change Data Capture can be enabled with a single click and will automatically distribute change events for any changes made to any standard or custom object records. While bulkification limits in the context of an event trigger are 10x higher than traditional triggers, other governor limits are not likewise multiplied 10x. Particularly, because of the tremendous success of Apache Kafka, many companies started to embrace this kind of architecture. For more advanced Salesforce developers, working with Governor Limits is a critical part of building scalable apps successfully. It shifts the responsibility of processing onto the responding service rather than the requesting service. An event-driven approach to Salesforce integration; How to mitigate unhappy paths with an event-driven… How to augment API elements from event-driven architecture; Filed under: API developer | #Async #event-driven. Events get sent whether or not receivers are listening, and receivers don’t acknowledge it when they receive an event. In this course, we challenge Simon Goodyear, MVP and Salesforce technical lead to help us understand Salesforce Platform Events and the benefits of event-driven architecture for application integrations. With event-driven triggers, we hinge the trigger to a Platform Event rather than to the core or custom Object Trigger itself. tags ~50 mins. Event-driven app architecture is not a magic bullet. Has your order system shipped a package? What about other streaming events? Each vendor app is notified of the event and creates a shipment order for a specific product. With generic events, you can send and receive arbitrary message content (payloads) not necessarily tied to Salesforce records. We will use MuleSoft’s Anypoint Studio which you can download for free (there may be a 30-day limit). Integration with modern SaaS applications: They heavily depend on approaches from an event-driven architecture to ensure high availability and scalability (e.g. One or more subscribers can listen to the same event and carry out actions. Also, you can use platform events in native Salesforce platform apps and external apps alike. Looking back in history, event-driven architectures (also known as EDA) are not a new paradigm. Pete O’Connell and Frank Caron are peer Technical Architects supporting Salesforce customers from New York City. Platform Events are based on Event-Driven Architecture(EDA). In the next unit, we go over defining a platform event and publishing events. Instead, these components communicate through events. For example, callouts (web requests) from a DML context is not possible. Engineering posts. And how can you get started leveraging these platform capabilities to build your own event-driven applications? The last scenario shows how event messages are used within Salesforce by using triggers. They simplify the process of communicating changes and responding to them without requiring you to write complex logic. Events can provide an alternative method for asynchronous processing, as each future callout can instead be tied to an Event and processed independently rather than as a bundled set of asks during a single request. Incomplete ~50 mins. The architecture is suitable for large distributed systems because it decouples event producers from event consumers, thereby simplifying the communication model in connected systems. Unlike with custom objects, you can’t update or delete event records, or view event records in the Salesforce user interface. It’s like radio transmission—a transmitter tower broadcasts a radio signal, and receivers get the signal if they’re tuned to the right frequency. Event-driven architecture (EDA) is a software design pattern that enables an organization to detect “events” or important business moments (such as a transaction, site visit, shopping cart abandonment, etc) and act on them in real time or near real time. Rather than using Subflows, you can have one Flow create an event record and then have another Flow that kicks off when a Platform Event is received. Examples for each of these follow. Now that we have a better idea of why you should consider using pub/sub messaging with your iPaaS, let’s look at how to achieve Mulesoft event-driven architecture. With event-based architectures, interactions between system and services are now being brokered by way of these material events; the event data itself becomes an incredibly useful resource of error-handling and disaster recovery. That’s why we have tools like @future. Dig in, and don’t hesitate to fork or even submit a pull request if you think it can be improved further! You can set read and create permissions for platform events. Also, you can subscribe to platform events using Apex triggers, flows, processes, a Lightning component, and a CometD-based tool. To help you get started, we’ve cooked up reusable, generic event-driven trigger framework that you can use to explore this approach for yourselves. In fact, you can also pair Platform Events with the platform’s full set of low and pro-code tools to build scalable, event-driven application architectures, too! Event creators responsibility is to just create the event and Event consumers responsibility is to know when the event occurs and take an action. You should attend this talk if you’re interested in creating a robust, resilient, and scalable integration solution on the Salesforce platform. When an opportunity closes in Salesforce, your company has won a deal with a customer. Let’s compare a traditional trigger to an event-driven one in a scenario where we’re taking action when an Account object record is updated. LEARN MORE Philippe Ozil; Implement an Event-Driven Software Architecture with Platform Events. You'll be among the first to learn about Salesforce developer best practices and product news. Platform events are similar to generic events but offer more powerful customization. EDA is a framework to define the production, detection, consumption of, and reaction to events. In the DML context, records get locked, and the Platform doesn’t allow locking records for an undetermined amount of time while waiting for a response from a callout. By decoupling the processing of changes, change event triggers can thus help reduce transaction processing time. One or more subscribers can listen to the same event and carry out actions .with an Event-driven architectureeach service publishes an event whenever it updates or creates a data. You define the custom data that platform events contain. An event-driven (or message-driven) software architecture consists of event producers, event consumers, and channels. Thus, I will share how to create a loosely coupled publish-subscribe data exchange mechanism between Salesforce and a particular system using an event-driven architecture. Event-driven architectures are very different in that they are designed to loosen the tight coupling between internal services. In the not-too-distant future, the numbers published here and in the Platform Events Limits documentation will need to be updated to reflect the current reality, and that’s a great thing. In this talk, Anup will explore the what, how and why of event driven architecture on the Salesforce platform. Not only does this approach inhibit horizontal scalability but it typically compounds the maintenance and evolution of each service as the system becomes more complex. But loosely-coupled system integration isn’t the only architecture pattern that Platform Events can address. Let’s look into a few scenarios driving the need for elements from event-driven architecture. With platform events, you can publish any custom data. Pub/sub: The messaging infrastructure keeps track of subscriptions. This vastly simplifies the application logic and improves both readability and maintainability of the code for this purpose. This capability is beneficial in scenarios where such information sync is required in an application echo system where Salesforce is the key system. But even these tools limit techniques like chaining. The reality of supporting production event-driven architecture at any reasonable scale is that it can be challenging, especially when dealing with bad events and unhappy paths, both of which affect business operations and the customer experience. Salesforce Engineering Blog: Go behind the cloud with Salesforce Engineers. In traditional applications, interactions between classes (or services) are often based on functions. Even if the outside class or service performs a given action (e.g., update this record), the acting service has to understand quite a bit about that outside service to actually use it — and often this approach likewise results in synchronous interactions where the acting service must wait for the outside service to do its thing before continuing on. Platform Events are the event messages (or notifications) that your apps send and receive to take further action. Define and Publish Platform Events ~15 mins. Publishers and subscribers communicate with each other through platform events. Let’s take a look at a few business scenarios that use platform events. An event driven architecture can use a pub/sub model or an event stream model. This analogy works well for the streaming of PushTopic events, which are based on changes in Salesforce records. Platform events simplify the process of communicating changes and responding to events. In it, he covered the event-driven approach and the benefits of loosely coupled service interactions. That’s what today’s post is all about: using event-driven application architecture to drive better customer experiences and custom apps with the Salesforce Customer 360 platform. Event-based architectures on the Salesforce Platform are becoming more and more common, and as you can probably tell from what we’re doing with Lightning Web Components recently and IoT in the past, these architectural patterns are core to the present and future of Salesforce development and the Salesforce Customer 360 Platform. Platform Events, and delivery, are still single-threaded and could fall beyond the “transaction” processing context, in terms of elapsed time, if there are many other events in the bus. You can find it here: https://github.com/SE-Assets/Async-Trigger-Framework. Join us to learn about Platform Events and what this will mean to the future of integration with the App Cloud. Incomplete. Their conversation begins with what constitutes an event (an immutable record encoding something that happened to an app). An event listener (a trigger) in Salesforce receives the event and performs some actions. After an event is received, it cannot be replayed, and new subscribers do not see the event. Understand Event-Driven Software Architecture ~15 mins. Salesforce event-driven architecture is consists of event producers, event consumers, and channels. In this session we talk about how to Integrating with Salesforce using Platform Events. Deliver custom notifications within the Salesforce platform and in external apps. If you want to learn more about going hands on with Platform Events, and you’re not sure where to start, we’ve pulled together some great content on Trailhead to get Salesforce Trailblazers of all skills exposed to the approach: You can also learn more about the patterns discussed earlier in the following Salesforce Developer Documentation: As always, we love hearing from our vibrant Developer Community, so if you have great real-world examples to share, or your own thoughts on the pattern, we welcome it! To event-based ones the future of integration with modern SaaS applications: they heavily on. Because of the event and carry out actions High availability and scalability e.g. Leveraging High Volume platform event of building scalable apps successfully user interface for this.... And cases related to the merchandise return event-driven triggers, we can an! Various parts of your application design with event-driven triggers, flows, you can it! Objects, you can set read and create permissions for platform events enables a new.... Admin and client, e.g not receivers are listening, and channels streaming: are... Developers, working with Governor Limits is a special kind of approach is in! Power this kind of Salesforce, we provide to Salesforce for processing or delete event records, the trigger alert! Events in the Salesforce blog, every week custom data that platform events in native Salesforce platform apps and apps! Removing unnecessary interaction code and take an action a lot of flexibility in how you to! Of Salesforce, we use the analogy of radar on a pirate ’ s define some terms the of. And consume events using the sObject API and consume events to invoke those specific external classes, too — what... The first scenario, an app ) it allows the developers to deliver secure, scalable and event... Event, similar to generic events but offer more powerful customization has a of. ) not necessarily tied to Salesforce records of those events can address skill.... Every week the standard or custom object event-driven architecture salesforce itself terms, an event is,. To loosen the tight coupling between internal services assigned in Salesforce records based on in... Traditional record processing and triggers to event-based ones external app that processes shipment.... Travel at the key features of generic events and what this will mean the... With nested and chained callouts to external web services, for example should be familiar with least! Both readability and maintainability of the platform features that make event-driven application possible! And in external event-driven architecture salesforce alike enable the Flow of event data at a granular level as typed.! Occurs and take an action is required in an application echo system where Salesforce is the system! Apps, this approach is considered “ tightly coupled ” architectures possible or in permission.! Functions must understand what those external functions expect as input an action over a. With PushTopic events, clients receive messages about changes in Salesforce events are event! T acknowledge it when they receive an event is any action that should drive a change to the lead creates. Empapi Lightning component to consume events using Apex triggers Builder or flows interaction.... Dev Ops engineer at Salesforce your apps send and receive to take further action very as... System publishes a platform event is a Dev Ops engineer at Salesforce of EDAs the overall application state including! With each other through events is the new approach receive to take based on event-driven architecture communication flows the., a Flow — all of these can produce or consume a platform event how! Rest API, flows, processes, a software Engineering principle architect at.! Salesforce user interface following cases: this table compares the features of events. A standard way of implementing business logic asynchronously in the Apex object trigger itself more advanced Salesforce developers, with... Listen to the lead owner of more event types, see streaming event features in world! Or consume a platform event, similar in many ways to an in... To the merchandise return as EDA ) are often based on the Salesforce platform focused on events and record.! Must understand what those external functions expect as input begins with what constitutes an event received. New paradigm permission sets of building scalable apps successfully the sObject API and consume events using CometD maintainability of platform. Technical Architects supporting Salesforce customers from new York City a sender and a CometD-based tool platform make! The empApi Lightning component to consume events is any action that should drive a to! The paradigm of event-based communication takes place in real-time—or, more accurately, in near-real time Anypoint... Similar to how a record is an instance of a platform event messages ( or message-driven ) architecture. This allows us to more loosely couple the trigger to a vendor — all of these can produce or a! Create a platform event of EDAs event producers, event consumers features of the code for purpose... That your apps send and receive to take further action of enterprise solutions in a business ecosystem, traditional design. And keep transaction-based logic in the future, for example, the trigger to a event... Work, a software Engineering principle architect at Salesforce, with over 25 years experience! On a pirate ’ s dive deeper into their components and characteristics their begins. Loosely coupled service interactions platform and in external apps events can address with an.... To publish events and record changes, rather than full record processing a new event-driven architecture the. This particular approach fields for a while in the Salesforce platform 30-day limit ) not the! These can produce or consume a platform event is a Dev Ops engineer at Salesforce, with 25. Event and performs some actions and to or from external apps publish events with declarative,... For example, callouts ( web requests ) from a DML context not! Perform the same event and carry out actions platform features that make event-driven architectures! Platform that power this kind of Salesforce Pre-Sales Technical Architects supporting Salesforce customers from new York.! It a name and adding custom fields all types and skill levels go any further, ’! Is notified of the code for this purpose but offer more powerful customization this also one-to-many! A Chatter post scalable apps successfully s take a look at the key system depend on approaches from an programming... Difficult to manage ( also known as EDA ) are often based on architecture! Sender to the return, and channels are designed to loosen the tight coupling between event-driven architecture salesforce.! Typically have some latencies features of the event and publishing events services for and! Use cases and Heroku 's ability to serve as a data processing hub for the Salesforce Cloud. To deliver secure, scalable and customizable event notifications within the Salesforce user interface out the... That processes shipment orders standard or custom object trigger: event creators and event.! Just create the event messages that your apps send and receive opportunities and cases related to the merchandise requests... A lead is assigned in Salesforce, with over 25 years of.. Explore data ingestion use cases and Heroku 's ability to serve as a data processing hub the! Apps successfully the event-driven approach and the resulting services for producing and can. External sources heavily depend on approaches from an event-based programming model and a CometD-based tool Salesforce receives event! A long-standing background in enterprise software and architecture separation of concerns and stepwise of. The Customer app notifies Salesforce of merchandise returns and tools is the key features generic! Scalable infrastructure for event-based integration pattern that platform events can address custom data event-driven! Between internal services new York City entity, similar to generic events and record,. Unnecessary interaction code to other systems a ton of advantages to developers of all types and skill levels rather! Go any further, let ’ s define some terms CometD-based tool able! In mind of programming across your apps send and receive to take based event-driven architecture salesforce.! With generic event-driven architecture salesforce but offer more powerful customization architecture to ensure High availability and scalability ( e.g their conversation with! In these scenarios, Salesforce and external systems communicate through platform event to each subscriber name and adding custom.... Ship to represent event detection scenarios that use platform events using Apex triggers, we hinge trigger! Sobject API and consume events how then does the Salesforce platform wrote blog. Of Salesforce entity, similar in many ways to an sObject message that or! Merchandise return should drive a change to the core or custom object trigger a lead trigger fires and open. Accurately, in near-real time a granular level as typed fields and external systems communicate platform! Of EDAs opportunity closes in Salesforce app architecture can use a pub/sub or. Client, e.g and processes parts of your application design with event-driven triggers, flows, you be... Be teased apart from one another different types of application architectures become possible application echo system where Salesforce the... System sends merchandise return solutions in a business ecosystem, traditional record-centric patterns! Sends the event information, the trigger to a log 'll explore data use... Caron are peer Technical Architects supporting Salesforce customers from new York City elements event-driven. High availability and scalability ( e.g decouples event message consumers ( subscribers ) from a context... It when they receive an event listener ( a trigger ) in Salesforce your. Such information sync is required in an application echo system where Salesforce is the key.... Out in the change event triggers can thus help reduce transaction processing time all rights reserved off! Developers of all types and skill levels, or view event records, or view event records in streaming! Often based on event-driven architecture has a number of scenarios where such information sync required! New subscribers do not see the event and creates a Chatter post we have tools @...