Service Mesh Event Simulation for Cascading API Call Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developers of extension applications in Software-as-a-Service (SaaS) systems face challenges in understanding the performance impact and costs of their extensions in production use, as existing testing methods are inadequate for evaluating cascading actions across multiple software systems and extension applications, which can lead to adverse performance and cost issues.

Innovation Solution

A simulation platform that processes event data and API monitoring data in combination with application process models and actual production data to generate simulation results, including call graphs and cardinality analysis, allowing for the evaluation of event-driven extensions and their cascading effects across multiple software systems.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If extension applications are deployed to provide additional functionality in SaaS systems, then system versatility and functionality are improved, but performance impact and costs become difficult to predict and control

Engineering Contradiction:
Improvefunctionality extensionVSAvoidperformance predictability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The simulation platform performs preliminary evaluation of extension applications before deployment to production environments. It simulates the behavior of extension applications using monitored event data and API call patterns to predict performance impact and costs, allowing developers to identify and resolve issues before actual deployment.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback loop by monitoring actual production data (events published and API calls received) and using this information to refine simulation models. This feedback mechanism improves the accuracy of performance predictions for future extension application evaluations.

Inventive Principle:
Principle #23Feedback

2Productivity

If traditional testing methods are used for extension applications, then development time is reduced, but cascading actions across multiple software systems cannot be properly evaluated

Engineering Contradiction:
Improvedevelopment speedVSAvoidperformance evaluation accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The simulation platform acts as an intermediary between development testing and production deployment. It uses monitored production data as input to create realistic simulation scenarios that capture cascading actions across multiple software systems, providing accurate performance evaluation without requiring extensive production testing.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If extension applications call APIs across multiple software systems, then system integration and functionality are enhanced, but cascading actions become hard to overlook and depend on data not accessible to developers

Engineering Contradiction:
Improvesystem integrationVSAvoiddata accessibility
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The simulation platform provides a universal evaluation environment that can simulate and analyze cascading actions across any number of software systems and extension applications. It consolidates data from multiple sources (event monitoring, API monitoring) into a comprehensive simulation model that makes hidden dependencies visible to developers.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11119883B1Simulating event interdependencies in service meshes extended by event-driven applications
Publication Date: 2021.09.14 SAP SE
  • US11119883B1 patent drawing
  • US11119883B1 patent drawing
  • US11119883B1 patent drawing

AI summary

Methods, systems, and computer-readable storage media for generating a call graph representative of a service mesh including software systems and extension applications, the software systems including a first software system that is configured to publish a first event and a second software system configured to receive first API calls, the extension applications including a first extension application configured to consume the first event and, in response to the first event, transmit first API calls, determining a first cardinality representative of a ratio of first events to first API-calls, receiving monitoring data representative of frequencies of the first event occurring during production use of the first software system, simulating production use of the service mesh by generating a set of frequencies of first API calls based on the call graph, the monitoring data, and the first cardinality, and displaying simulation results including the set of frequencies of the first API calls.