Augmented Notification Service for Scalable Web Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional methods for achieving high scalability and end-to-end state consistency in distributed environments, such as cloud and edge computing, face challenges due to the need for back-end services to be stateful, leading to resource complications, latency, and inconsistent data across microservices.

Innovation Solution

Implementing an augmented notification service control system that separates stateless and stateful operations using REST APIs and a notification service manager, which applies augmentation operations to contextual features, ensuring end-to-end consistency through acknowledgement mechanisms and horizontal scaling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional pub/sub systems (Kafka, PNDA, Twitter) are used to update UI clients state, then scalability is improved, but end-to-end consistency is sacrificed

Engineering Contradiction:
ImprovescalabilityVSAvoidend-to-end consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system segments the notification delivery mechanism into two distinct parts: a stateless event bus that handles event distribution for scalability, and a stateful notification service that manages client connections and acknowledgment for consistency. This segmentation allows each component to optimize for its specific function without compromising the other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The notification service acts as an intermediary between the event bus and UI clients. It receives events from the stateless event bus, manages stateful connections to individual clients, ensures reliable delivery through acknowledgment mechanisms, and propagates state changes consistently across all connected clients.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If all UI clients poll the back-end at frequent intervals, then data freshness is improved, but system load and scaling challenges increase

Engineering Contradiction:
Improvedata freshnessVSAvoidsystem load
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

Instead of continuous polling, the system uses event-driven periodic action where the back-end service publishes state change events to the event bus, and the notification service propagates these changes to clients at the appropriate moment, eliminating the need for frequent polling while maintaining data freshness.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system implements self-service by having the back-end service automatically publish state changes to the event bus when modifications occur, and the notification service automatically propagates these changes to connected clients without requiring explicit polling requests from each client.

Inventive Principle:
Principle #25Self-service

3Reliability

If back-end services are made stateful to maintain consistency, then end-to-end consistency is improved, but resource complications and latency increase

Engineering Contradiction:
Improveend-to-end consistencyVSAvoidresource complications
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments stateful and stateless functionality into separate services. The event bus remains stateless for simplicity and scalability, while the notification service handles stateful operations (tracking client connections, managing acknowledgment) as a separate component, reducing the complexity burden on the back-end services.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250294072A1High Scalability and End-to-End Consistency for Web Applications in Distributed Environments
Publication Date: 2025.09.18 CISCO TECHNOLOGY INC
  • US20250294072A1 patent drawing
  • US20250294072A1 patent drawing
  • US20250294072A1 patent drawing

AI summary

In one embodiment, a method may use one or more Representational State Transfer (REST) Application Programming Interfaces (APIs) to receive data associated with a web application from a first user interface (UI) client device. The method may use the one or more REST APIs to determine a stateless operation by performing stateless pre-processing on the data associated with the web application and one or more contextual features associated with the stateless operation. The method may determine an augmented notification by applying an augmentation operation on the one or more contextual features and the stateless operation. The method may determine a stateful operation using the augmented notification. The method may receive a request for an update on the data associated with the web application from a second UI client device. In response to receiving the request, the method may communicate the stateful operation to the second UI client device.