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: 
CarlosRoggan
Product and Topic Expert
Product and Topic Expert

SAP Cloud Platform Extension Factory, serverless runtime


|


SAP Cloud Platform Serverless Runtime


|


SAP Cloud Platform Functions - Beta


|


Function-as-a-Service


|


FaaS


|


 

I'm confused...
What’s the difference?

To give a short answer: It’s all the same
(almost)
At the end, we can write some javascript code and it runs in a serverless environment

What is it, precisely?

It is a service offering in the SAP Cloud Platform, Cloud Foundry environment


 

But why that strange name?

While the name itself, Serverless Runtime, might still sound confusing, it makes more sense if we compare it to other “runtime” offerings in SAP Cloud Platform:

Application Runtime
The classic way of writing e.g. a java web application and deploying it to the cloud where it runs on classic java server with underlying JRE. The application developer takes care of operating and maintaining, etc.
Agree that these efforts are already less that in the even more classical onPrem world

Serverless Runtime
Here the developer doesn’t need to care about the runtime, meaning that he writes the code and the environment takes care about scaling etc just like it is expected of a serverless environment.
And, as expected, it causes cost only when running
This is the right choice for lightweight extensions, small portions of javascript code
It is nicely coupled with other offerings like Enterprise Messaging, Backend Service, OData Provisioning

Kyma Runtime
Bigger, more powerful, more flexible, more costly

While the Serverless Runtime is a "service" offering, it also provides a subscription-based tool:
The Extension Center


Nice, but where are the functions?

The screenshot helps us to understand:

The name "Serverless Runtime" is an umbrella for several capabilities that can be used to build serverless extensions.
Writing functions is only one of the capabilities, provided by "Serverless Runtime"
We don't see any "Function" in the Extension Center UI. Instead, a  function project is called "Extension".

Why?

We understand that this is not a general worldwide FaaS technology product. Functions are meant to be part of a serverless extension scenario.
An extension scenario which is meant to be simple and still provides the possibility to write code.
And in fact: it is REALLY easy

Blablabla...

Really.
Try to imagine this example scenario:
Get notified about Backend changes with Enterprise Messaging
On every change, a Function is triggered
It can call an API with OData provisioning to get more details
The function can store data with Backend Service

Such a powerful extension scenario can be realized completely serverless, with few lines of code and little configuration
No local dev, no operation, no maintenance, no database trouble, no scaling headaches.
And at low cost, as everything has to be payed only when it does its work

OK, cool.
But what if the scenario grows and the offerings don't cover the required functionality?

In that case, the function can be easily and seamlessly migrated to Kyma

Sounds like a marketing slogan...

It can be easily proven:
Both Kyma and Functions have the same underlying technology (Kybernetes)

Cool, thanks

Cool, time to close the blog....

Ehmmm - didn't you forget anything?

Thank you for reading

Welcome. Missing info: which is the CORRECT name?

SAP Cloud Platform Serverless Runtime

Last question: how can we learn more?

This announcement blog gives an introduction and overview about Serverless Runtime
SAP Help Portal: Serverless Runtime official docu
Recommended series of tutorials which explain in detail how to implement functions

Thanks
2 Comments