ABAP Push Messaging Channels for Real-Time Event Signaling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional message exchange mechanisms between client sessions, such as polling, lead to busy-waiting phases and resource wastage due to unnecessary requests, delaying user access and increasing server load.

Innovation Solution

Establishing advanced business application programming push and messaging channels using WebSocket protocol for bi-directional communication between clients and servers, enabling efficient message exchange through publish/subscribe infrastructure and channel attributes like channel group identification, access scope, and message type identification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If polling mechanism is used for message exchange between sessions, then client can check for new data, but client experiences busy-waiting phases and delayed access to resources

Engineering Contradiction:
Improveuser access delayVSAvoidprocessing efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

Instead of the client actively polling the server for messages (client-initiated), the server pushes messages to the client when they become available (server-initiated). This inversion of the communication initiative eliminates busy-waiting phases and immediately notifies clients of new data, resolving the contradiction between access delay and processing efficiency

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The server implements a feedback mechanism where it actively notifies clients via push channels when messages are available. This feedback loop allows clients to be immediately informed of new data without continuously checking, eliminating wasted processing time while maintaining real-time message delivery

Inventive Principle:
Principle #23Feedback

2Loss of energy

If polling mechanism is used for message exchange, then client can request data, but server experiences resource wastage due to unnecessary requests

Engineering Contradiction:
Improveserver resource consumptionVSAvoidmessage exchange simplicity
Core Design Contradiction:
Loss of energyVSEase of operation

Solution Approach 1:

The communication model is inverted from client-polling to server-pushing. The server takes the initiative to send messages only when data is available, eliminating unnecessary requests and resource consumption while maintaining the simplicity of message exchange through the push channel infrastructure

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The server serves itself by automatically pushing messages to clients when they become available, without requiring clients to continuously poll. This self-service approach eliminates wasteful server processing of unnecessary requests while keeping the message exchange mechanism simple and automated

Inventive Principle:
Principle #25Self-service

3Loss of energy

If polling mechanism is used, then client can check for messages, but server experiences increased access load to database

Engineering Contradiction:
Improvedatabase access loadVSAvoidmessage delivery reliability
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The server initiates communication by pushing messages to clients rather than clients polling the server. This inversion eliminates repeated database access loads from polling requests while maintaining reliable message delivery through the server-managed push channel infrastructure that tracks message availability

Inventive Principle:
Principle #13The other way round (Inversion)

4Loss of time

If polling mechanism is used, then client can request data, but processing time is extended due to busy-waiting phases

Engineering Contradiction:
Improveprocessing timeVSAvoidcommunication mechanism complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The communication initiative is inverted from client-polling to server-pushing. This eliminates busy-waiting phases and extends processing time while the underlying push channel mechanism, though technically sophisticated, presents a simple interface to clients who only need to subscribe and receive messages

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentEP2746950B1ABAP channels for event signaling
Publication Date: 2020.08.12 SAP SE
  • EP2746950B1 patent drawingFigure 1
  • EP2746950B1 patent drawingFigure 2
  • EP2746950B1 patent drawingFigure 3

AI summary

A system, a method and a computer-program product for exchanging communications between user sessions are provided. A first push channel and a first messaging channel on a first application server for connecting a first client to the first application server are established. The first messaging channel communicates with the first push channel, where both channels form a first session corresponding to the first client. A second push channel and a second messaging channel on a second application server for connecting a second client to the second application server are established. The second messaging channel communicates with the second push channel, where both channels form a second session corresponding to the second client. The first and second application servers communicate on a communication network. Messages are exchanged between the first and second messaging channels to form a connection between the first and second clients.