Event Processing Order Guarantee via Key-Based Server Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing environments, managing and processing event messages in the order they are generated becomes increasingly difficult due to the complexity of IT networks, leading to potential misordering and incorrect remedial operations when events are processed by multiple servers.

Innovation Solution

An event management system employs a unique message key for each event, using a publication/subscription framework to ensure that like-keyed event messages are processed by a single server, preserving the order of arrival and preventing distribution across parallel processing servers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If event messages are distributed across multiple servers for processing, then processing capacity and productivity are improved, but event message ordering and reliability deteriorate

Engineering Contradiction:
Improveevent processing capacityVSAvoidevent message ordering
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments event processing by creating dedicated processing queues for each monitored resource, where each queue handles events from a specific resource in chronological order. This segmentation allows multiple servers to process different resource events simultaneously (maintaining productivity) while ensuring each resource's events are processed sequentially in the correct order (maintaining reliability).

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary component (event processor/queue system) that sits between event sources and processing servers. This intermediary receives events, assigns them to appropriate queues based on resource identity, and manages the distribution to servers while preserving order. The intermediary acts as a mediator that enables parallel processing without compromising event sequence integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple servers process event messages in parallel, then processing speed and productivity are improved, but event message distribution control and manufacturing precision deteriorate

Engineering Contradiction:
Improveevent processing speedVSAvoidevent processing accuracy
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The system applies local quality by assigning specific processing responsibilities to specific servers based on resource ownership. Each server becomes specialized in processing events for particular resources, ensuring that the correct server handles each event type with appropriate expertise and maintaining precision while enabling parallel processing across different resource domains.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system performs preliminary action by pre-assigning events to specific processing queues and servers based on resource identity before actual processing occurs. This preliminary routing decision ensures that events are directed to the appropriate server in advance, maintaining processing accuracy while enabling parallel execution across multiple servers.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If event messages are processed by different servers, then system adaptability and versatility are improved, but event correlation and measurement precision deteriorate

Engineering Contradiction:
Improvesystem flexibilityVSAvoidevent correlation accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The system implements feedback mechanisms where processed events and their outcomes are tracked and correlated across servers. The event processor maintains awareness of which server processed which events, enabling post-processing correlation and analysis. This feedback loop ensures that even though different servers handle different events, the system can still accurately correlate events and maintain measurement precision through centralized tracking and logging.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10659289B2System and method for event processing order guarantee
Publication Date: 2020.05.19 SERVICENOW INC
  • US10659289B2 patent drawing
  • US10659289B2 patent drawing
  • US10659289B2 patent drawing

AI summary

The present approach relates to the use of a unique key for event messages related to the same event and by employing a publication/subscription framework so that like-keyed event messages are only processed by a subscribing server. The message key may be a numeric value (e.g., from 0-99) calculated or generated based on designated event fields so that similar message keys will have the same message key number. The message key may be used to populate an event bucket field and may also be used as the topic of an event message, allowing a subscribing server to subscribe to this message key and receive and process the related event messages in order of arrival. In this manner, there is no distribution of the event messages having the same message key between parallel processing servers.