Introducing Event-Driven Architectures

Objective

After completing this lesson, you will be able to identify the key benefits of Event-Driven Architectures.

Introduction to Event-Driven Architectures

Efficiency through Event-Driven Architectures

Key benefits of event-driven architectures include real-time processing, increased reliability, scalability, efficient resource utilization, flexibility, and agility. Icons illustrate each benefit.

This type of architecture enables companies to future-proof their IT systems and adapt agilely to new challenges.

SAP offers the following products for this purpose:

  • SAP Event Mesh (Standalone) SAP Event Mesh is a cloud-based messaging and event handling system that enables loose coupling between applications. It supports event-driven communication through reliable and asynchronous transmission of messages between SAP and non-SAP systems.
  • SAP Integration Suite, SAP Event Mesh As part of the SAP Integration Suite, SAP Event Mesh is used for seamless integration of applications via events. It enables real-time communication between different cloud and on-premise systems and extends the suite with event-driven integration. This is an in-house development by SAP and is based on enterprise messaging.
  • SAP Integration Suite, Advanced Event Mesh This extended version is based on Solace Pub- Sub+ and offers a highly scalable, distributed event streaming platform. It enables a powerful, global event mesh with support for various protocols (for example, MQTT, AMQP, JMS) and ensures efficient and secure event transmission in hybrid IT landscapes.

Comparison of the Products Offered

FeatureSAP Event MeshSAP Integration Suite, SAP Event Mesh (EMIS)SAP Integration Suite, Advanced Event Mesh
FunctionalityBasic event processing and forwardingIntegration of events within the SAP Integration SuiteAdvanced event streaming, management, and monitoring capabilities
Use CasesSimple integration within the SAP ecosystemIntegration of SAP and non-SAP sources in hybrid landscapesComplex, large-scale event-driven architectures
DeploymentCloud-based on SAP BTPPart of the SAP Integration Suite on SAP BTPFlexible deployment across various public clouds, on-premises, or edge environments
Data VolumeSupports messages up to 1 MB with 10 GB storageMatches the specifications of SAP Event MeshSupports messages up to 30 MB with up to 6 TB storage
Event Governance & MonitoringNot supportedBasic integration into the SAP Integration SuiteComprehensive event governance, design, publishing, and event discovery
CostsCost-efficient with usage-based pricingIncluded in the cost of the SAP Integration SuiteHigher costs due to extended functionalities

Read More

Overview

A solution architecture is designed and implemented that fulfills the following business requirement: When a Business Partner record is changed in the SAP S/4HANA Cloud Public Edition, a change event is to be sent to the Integration Suite - Event Mesh. An iFlow receives this event and processes it further.

In this example, we limit ourselves to a single change event. Processing in the iFlow is carried out by a simple Groovy Script.

The implementation spans several systems and involves various personas. For a better overview, however, a strict separation of roles is deliberately avoided. It means that no distinction is made between SAP BTP administrators, integration specialists, SAP S/4HANA administrators, or developers.

Diagram showing SAP BTP Subaccount with Integration Suite, Event Mesh instance message-client, service key, Event Mesh, Cloud Integration, and connection to S/4HANA Cloud.

Description

  • The Integration Suite is subscribed to an SAP BTP subaccount.
  • An event mesh instance with the message-client plan is created.
  • A queue and a topic subscription are created in the Integration Suite - Event Mesh.
  • The Cloud Integration retrieves the event from the queue and processes it.
  • The SAP S/4HANA Cloud, public edition, fires the event.
A workflow diagram with 13 steps for EDA demo across S/4HANA and SAP Subaccount. It includes logging in, activating EMS and Cloud Integration, creating API credentials, and creating subscriptions and flops.

Caution

All upcoming exercises serve as demonstrations. Your instructor will lead you through them.

Description of the Demo Process

Each individual step is described in detail below.

  • Log in to the SAP BTP subaccount.
  • Activate the SAP Integration Suite, Event Mesh capability.
  • Activate the SAP Integration Suite, Cloud Integration capability.
  • Add the necessary role collection to the platform user.
  • Create a message client by creating an SAP Integration Suite, Event Mesh instance.
  • Create an OAuth 2.0 client by creating a service key on the SAP Integration Suite, Event Mesh instance.
  • Create an SAP Integration Suite, Event Mesh queue.
  • Log in to the SAP S/4HANA Cloud Public Edition.
  • Create a Communication Arrangement as a communication channel.
  • Configure an Outbound Topic to the communication channel.
  • Create a subscription in the SAP Integration Suite, Event Mesh queue.
  • Create the access authorizations for the inbound adapter in the SAP Integration Suite, Cloud Integration.
  • Create an iFlow to retrieve the business event (cloud event) from the SAP Integration Suite, Event Mesh queue.

Activate Integration Suite Capability Integration Suite, Event Mesh (EMIS) in Capabilities

The event triggered by the SAP S/4HANA Cloud, public edition is sent asynchronously to the SAP Integration Suite, Event Mesh. The event is stored in a queue there. Therefore, the SAP Integration Suite, Event Mesh must first be activated.

In this exercise, the SAP Integration Suite capability Event Mesh (EMIS) is activated.

Prerequisites

  • The role collections Integration_Provisioner and Subaccount Administrator are assigned to the user who activates the capability.
  • An SAP Integration Suite with plan free or standard edition is already subscribed to the subaccount.

Note

For participants attending an on-site training only: This exercise will be discussed theoretically by your trainer and will not be carried out on the training system.

Activate the Integration Suite Capability, Cloud Integration

The event fired by the SAP S/4HANA Cloud is to be read from the Integration Suite, Event Mesh and further processing is to be triggered. The Integration Suite, Cloud Integration is used for this purpose.

In this exercise, the Integration Suite Capability, Cloud Integration is activated.

Flowchart showing steps for EDA-Demo in SAP Subaccount: Log in, Activate EMIS, Activate Cloud Integration, Add Role Collections, Create EMIS Instance, Create EMIS Instance Service Key, and Create Queue.

Prerequisites

  • The Integration_Provisioner and Subaccount Administrator role collections must be assigned to the user activating the capability.
  • An SAP Integration Suite with plan free or standard edition is already subscribed to the subaccount.

Note

For participants attending an on-site training only: This exercise will be discussed theoretically by your trainer and will not be carried out on the training system.

Assigning the Required Role Collections

After activating SAP Integration Suite, Event Mesh and Cloud Integration, users must be granted the necessary permissions to use these capabilities. In SAP Business Technology Platform (SAP BTP), this is done through the assignment of Role Collections.

In this exercise, Role Collections are assigned to an application user within the subaccount.

A flowchart for EDA-Demo showing steps: 1) Log in, 2) Activate EMIS, 3) Activate Cloud Integration, 4) Add Role Collections. Symbols represent Service Key and Event Topic.

Prerequisites

  • The user performing the assignment must have the Subaccount Administrator Role Collection.
  • In the Integration Suite, the Cloud Integration and Event Mesh capabilities must be successfully activated.

Note

For participants attending an on-site training only: This exercise will be discussed theoretically by your trainer and will not be carried out on the training system.