Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
martin_bachmann
Advisor
Advisor
Some years ago, the journey for Event-driven architecture at SAP began. First embedded in solutions like Cloud Platform Integration (CPI) or Vehicle Insights. Then also available to customers and partners as an own service.

Over time the number of supported Events from various SAP Solutions increased. The generic support for other platforms like SAP ECC / SAP NetWeaver or SAP SuccessFactors was added. Then adaptors for SAP Integration Suite and SAP Data Intelligence on AMQP were released. Overall, there is a good coverage today – and the journey is not yet over…

The first scenarios focused more on messaging scenarios, leveraging for example queueing features to deal with slow consumers. Then more and more scenarios related to event-driven architecture happened – with a great demo shown already at the SAP TechEd 2018 Keynote. The increased usage of SAP BTP to easily extend enterprise-critical backend systems or cloud-based systems has been a major reason for the shift towards the events.

As SAP decided some time ago to introduce the new ‘SAP Business Technology Platform (SAP BTP)’ we have used the momentum and therefore have changed the official name for ‘SAP Cloud Platform Enterprise Messaging’ to ‘SAP Event Mesh’. This highlights the increased importance of event-centric scenarios in the SAP cosmos.

Very important: of course, product features, pricing and supported platforms, … all stay the same.

If you want to get started with Event-driven architectures with SAP then there is a great concept in the SAP Discovery Center called Missions. Missions are end-to-end projects that provide know-how, step-by-step how-to-guides and in a lot of cases sample coding. The missions listed below will help you to get started with Event-driven architectures with SAP:

Overall, we are on a great journey with SAP Event Mesh and will continue to invest in additional features and additional supported scenarios. Stay tuned for more to come.
19 Comments
r_herrmann
Active Contributor
Hi Martin,

thanks for the update. Can you help me answering the two following question?

Best regards,
Raffael
Jelena
Active Contributor

"Where we are going, we don't need maps!" 🙂

I'm curious myself though. Perhaps martin.bachmann could clarify. I didn't find any roadmaps beyond 2019 using either old or new name.

Edit: also, in Discovery Center, the diagrams have already been updated with the new name but the text still has the old name. https://discovery-center.cloud.sap/serviceCatalog/enterprise-messaging?region=all

martin_bachmann
Advisor
Advisor
0 Kudos
Hello Raffael and Jelena, we are currently working on updating the roadmap. I hope that the planned new topics - and there are a few - will show up soon in the roadmap explorer.

And there are so many spots containing the name, so this will also take some time until all the renaming is complete. But please don't hesitate to share here in the chat if you still find the old name 🙂
martin_bachmann
Advisor
Advisor
Hello, the update just got published to the roadmap tool (link two comments above). Thanks again for reminding!

Also the discovery center got updated with the new 'Event Mesh' name...
former_member227283
Active Contributor
0 Kudos
Thanks Martin.

Very precise info.

I have one query could please help to understand it.

We have CPEA license for Integration suite in which we have enabled capability of Cloud integration. Now our requirement is to enable the JMS queues for one of our iflow as per the business requirement.

So for such requirement it is OK to enable the "Message queue" option which is available under Cloud integration suite" or we have to specifically enable the Event Mesh along with "Message queue" to fullfill the requirement of JMS queues.

This part is not clear wether it is manditory to use Event mesh though we are using Integration suite enterprise license or we dont have to seperately subscribe for Event Mesh as it is embeded feature available in Integration suite.

Regards,

Anil
martin_bachmann
Advisor
Advisor
0 Kudos
Hello Anil,

thanks for the question. Depends on your scenario...

Inside the Integration Suite for JMS / Async messaging please use the built-in iFlow capabilities, no need to activate an additional service (like the 'Event Mesh') in addition.

But for sending events from SAP ECC / SFSF / SAP S/4HANA... to the BTP you need to set-up the 'SAP Event Mesh' service (also part of the CPEA license). If you need these events the inside the Integration Suite you can use the AMQP Adapter to link both services.

Best regards,

Martin
0 Kudos
Hi Martin, can you help me with one question?

Do we have something like messages rollback when we work with webhooks? For example when sending message to url returns 404 or 500 response code?
Frank1
Participant
0 Kudos
Hi Martin,

 

Thanks a lot for sharing.

 

Best regards
Tobias_Griebe
Advisor
Advisor
0 Kudos

Hi maksim_rehino63,

For the webhooks the following details apply (but are not officially documented and can change at any time):

Messages are POSTed to active webhooks as and when they arrive.

QoS 0

Messages are auto acknowledged immediately after sending to the webhook. Event Mesh does not wait for the webhook to return a response.

QoS 1

A message is acknowledged by Event Mesh only after the webhook returns a 2xx response.

If a webhook does not return a response within 1 minute, or if the webhook returns a non-2xx status code, the message is redelivered to the webhook after 15 minutes. The retry attempts continue until the webhook acknowledges the message with a 2xx response. Otherwise the message expires on reaching its expiry time (a.k.a. TTL or time-to-live).

A webhook can only hold on to a maximum of 9 unacknowledged messages, beyond which no new messages are sent to the webhook.

Messages consumed with webhook subscriptions cannot be acknowledged using the Acknowledgement API (POST /queues/{queue-name}/messages/{message-id}/acknowledgement).

If a webhook subscription is paused or deleted, all unacknowledged messages held by this webhook are released to the queue and made available for consumption.

A note on message TTL

Note that TTL can be set at the time of publishing a message:

  • Set x-message-expirationheader if pushing using REST API
  • Set Message.setJMSExpiration() if publishing using JMS

The queue must be configured to respect TTL (by setting respectTtl property).

Following is what is implemented:

  • Once in 15 mins. for 12 hrs.
  • Once in 30 mins. For 12 next 12 hrs.
  • Once in 60 mins. for next 24 hrs.
  • Post that once a day for 28 days.

I hope this answers your question.

Best Regards,
Tobias

0 Kudos
When I try to Access Event Mesh from my trial account, it says "You are not authorized to access the SAP event mesh cockpit". What additional steps need to be performed ?
SiddharthaR
Advisor
Advisor
0 Kudos
Hi Kiran,

I hope you have the following role collections added to your user in BTP trial account.


Event Mesh Roles

Pankaj1
Participant
Hi martin.bachmann ,

hope you are doing well.

Is this event mesh better as compared to IDoc? Can event mesh use in the same manner like IDocs? Is there any way to send Idoc in BTP ABAP enviroment? ... sorry i have asked many questions... 🙂  please guide on this.
martin_bachmann
Advisor
Advisor
Hello Yadav, no problem 🙂

There is no either or. IDocs are well established and are being heavily used by many, many customers. Purpose is in most cases to exchange information with other SAP Systems. With events we are now able to communicate events (e.g. updates to a material master) also to SAP BTP - SAP Event Mesh Service. This is then there the foundation for extension or integration scenarios.

You can also leverage SAP Event Mesh from the BTP ABAP Environment: https://blogs.sap.com/2021/05/06/how-to-leverage-the-sap-event-mesh-from-sap-btp-abap-environment/

And we are currently thinking about a generator for the NetWeaver Event AddOn which can package / wrap IDOCs into Events / Messages. So there is no either or 🙂

Hope this helps
Pankaj1
Participant
0 Kudos
Thanks Martin.. this will help for sure

So, in nutshell, both IDoc and event mesh has their own place in SAP portfolio. If i am choosing a BTP approach to build integration or extension scenario, then event mesh seems like good option.

Is my understanding right?
martin_bachmann
Advisor
Advisor
0 Kudos
Hello Yadav,

as always there are also grey zones, but in a simplified way your understanding is correct...

 
0 Kudos
Hi Martin, how is Event mesh compares/contrasts with SAP PI/PO?
0 Kudos
​Hi Tobias, Martin, Siddhartha,

I am implementing a flow with Queue with Webhook subscription. In the Queue it is configured with Max Unacknowledged Messages per Consumer = 1, TTL = 3600 seconds, with a Dead Letter Queue.

When the message receives 500 status code from the backend, then under the Queue, it shows '1' under Messages as well as under Unacknowledged Messages.

When the TTL is reached the it goes to 0 under Messages but '1' under Unacknowledged Messages.

1. Ideally when the TTL is reached, the message should be moved to Dead Letter Queue which is happening and there should be nothing under unacknowledged messages which is not happening. It still stays at 1.

2. Due to the above situation, the next incoming messages are not held in queue.

2. Also is there a way to delete or purge unacknowledged messages? As of now Purge Queue removes messages from the Message Queue.
michael_smithe5
Participant
0 Kudos
Can Event Mesh be used for SMS messaging from/to S/4HANA?  If not, what is SAP's recommendation for that?
gregorw
Active Contributor
0 Kudos
You could create a CAP Application as a middleware and use a SMS Service like Twilio as shown by Marius Obert in his reCAP 2022 talk "Let CAP talk to your users". You find the recording at https://www.js-soft.com/recordings-of-recap-online-2022/.