Virtual Processing Agents for Stream Event Delivery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large-scale stream processing systems, direct communication between processing units becomes impractical, and traditional publication-subscription models are inefficient when processing units cannot predict the events they need to subscribe to, leading to unnecessary subscriptions and resource inefficiencies.

Innovation Solution

The implementation of virtual processing agents that can receive and process events without explicit subscription, with a mechanism to identify and deliver events to interested agents, even if they haven't subscribed explicitly, and activate them if necessary, allowing for implicit subscription and past event retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If direct communication techniques are used between processing units, then communication efficiency is improved, but scalability deteriorates when millions of processing units are involved

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidscalability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a publication-subscription model as an intermediary mechanism between processing units. Instead of direct peer-to-peer communication, processing units publish events to topics and subscribe to topics of interest, with a message broker mediating the communication. This resolves the contradiction by enabling scalable system architecture while maintaining efficient event-driven communication through the broker-mediated subscription mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the communication system into independent publishing and subscribing components that interact through standardized topics. Processing units are divided into independent publishers and subscribers that communicate asynchronously through the message broker, allowing the system to scale to millions of units without requiring direct connections between each pair, thus resolving the scalability limitation of direct communication.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If processing units explicitly submit event subscriptions before receiving events, then subscription management is improved, but adaptability deteriorates when events cannot be predicted in advance

Engineering Contradiction:
Improvesubscription managementVSAvoidevent prediction capability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent implements preliminary action by having processing units pre-subscribe to all possible event topics before runtime. This allows the system to maintain simple subscription management while adapting dynamically to unpredictable events, as units are already subscribed to receive any event type that may occur, eliminating the need to predict events in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies universality by designing a subscription mechanism where processing units can subscribe to multiple topic types simultaneously. A single subscription system handles diverse event types (game events, map events, player events, etc.), allowing processing units to adapt to unpredictable events through a unified multi-functional subscription interface rather than requiring separate subscription logic for each event type.

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

3Reliability

If processing units subscribe to all possible events to ensure receiving relevant events, then event reception completeness is improved, but resource utilization deteriorates in large-scale systems

Engineering Contradiction:
Improveevent reception completenessVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies local quality by enabling processing units to subscribe to specific topic types relevant to their function rather than all possible events. For example, map processing units subscribe only to map-related events, game processing units subscribe to game-specific events, and player processing units subscribe to player-related events. This selective subscription approach ensures each unit receives complete relevant events while minimizing resource consumption by filtering out unrelated events at the subscription level.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3167370B1Stream based event processing utilizing virtual streams and processing agents
Publication Date: 2022.06.22 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3167370B1 patent drawingFigure 1
  • EP3167370B1 patent drawingFigure 2
  • EP3167370B1 patent drawingFigure 3

AI summary

Technologies are described herein for event delivery and stream processing utilizing virtual processing agents. Upon receiving an event publication in a queue, a runtime system identifies one or more virtual processing agents that might be interested in, but have not explicitly subscribed to, the published event. Event information of the published event is then delivered to the identified virtual processing agents. Prior to the actual delivery, the runtime system further determines if the virtual processing agents have been activated and activates those processing agents that have not been activated. Based on the received event information, some of the virtual processing agents might decide to explicitly submit subscriptions to receive more events from the queue. The explicit subscriptions will trigger the runtime system to deliver the subscribed events to the processing agents, which might include past events that have been published in the queue before the explicit subscription is received.