Integrating SAP With Serverless Camel

SAP is the world's leading enterprise business processing solution. There is always going to be a need to connect an organization's core to other SaaS offerings, partners, or even another SAP solution.  Red Hat Integration (RHI) offers flexibility, adaptability, and the ability to move quickly with framework and software to build the event-driven integration architecture. Not just connect, but also maintain data consistency across platforms. 

SAP offers interfaces such as OData v4, OData v2, RESTful API, and SOAP as the HTTP-based one, or you can also use the classic RFC(remote procedure call) and iDoc Messages. And there is a recent event enablement add-on that offers AMQP and MQTT protocol. Camel in RHI allows you to seamlessly connect to any of your preferred protocols. Developers can simply configure to connect to the endpoints with their address, credential, and/or SSL settings.

Serverless Eventing Architecture

Event-Driven Architecture (EDA) is a way of designing applications and services to respond to real-time information based on the sending and receiving of information about individual events. Serverless is all about providing service on a provision as-used basis. Combining both you get the best of both worlds. 

  • Loose coupling of services - For better fault tolerance, and can add/remove functionality on the go without affecting others. 

Why Camel K?

1. Dev Mode

 To run a camel spring boot or camel main application in Kubernetes, it requires a developer to build the docker or s2i images, create Kubernetes resources and then apply the resources to a running cluster which is very time-consuming. Camel K solves this problem and saves development time with the dev mode. Simply adding a --dev flag while running code allows the developer to deploy instantly to Kubernetes and also make any changes to the running pod whenever the source file is updated.

2. Dependency Resolution

 We know that camel supports multiple DSL such as Java or Groovy and Camel K supports it as well. What is new in Camel K is that the automatic dependencies management feature. The developer need not worry about packaging a deployable artifact or the maven or Gradle dependencies of various components. It automatically resolves the necessary dependencies from a source file during deployment. And also only one source file is enough to run integration in a pod.