Distributed Timer System Using Coordinator Locks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed computing systems for online games, particularly massively multiplayer online (MMO) games, face challenges in providing scalable and fault-tolerant timers that are not affected by the number of players, leading to increased computing load and complexity in maintaining timer nodes without a single point of failure.

Innovation Solution

A distributed timer system that uses multiple nodes to schedule, cancel, and expire timeouts, employing distributed locks to prevent race conditions and ensure fault tolerance, allowing for elastic scalability and dynamic adjustment of node numbers based on load, with the option to use an external distributed timeout data store for efficient storage and removal of timeouts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple timer nodes are used to provide fault tolerance, then system reliability is improved, but device complexity and computing load increase

Engineering Contradiction:
Improvetimer fault toleranceVSAvoidtimer node management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a coordinator node as an intermediary that centralizes the management of distributed locks and timeout tracking. This coordinator acts as a mediator between multiple timer nodes, allowing them to collaborate without direct peer-to-peer complexity. The coordinator manages the distributed lock state and coordinates timeout expiration across all nodes, reducing the overall system complexity while maintaining fault tolerance through the distributed architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent merges the functions of timeout management and lock coordination into a unified distributed lock mechanism. By combining these functions, the system reduces the number of separate components and interactions needed, simplifying the timer node management while preserving reliability through the distributed nature of the combined mechanism.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If distributed locks are used to prevent race conditions, then timer reliability is improved, but processing overhead increases

Engineering Contradiction:
Improvetimeout consistencyVSAvoidprocessing load
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements preliminary action by establishing distributed locks before timeout operations are performed. The lock acquisition happens in advance of the actual timeout management operations, ensuring that race conditions are prevented before they can occur. This preliminary locking mechanism maintains timeout consistency while optimizing processing by avoiding redundant conflict resolution during critical operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by replicating the lock state across distributed nodes through the coordinator. Instead of requiring complex consensus protocols for every operation, the lock state is copied and propagated to relevant nodes, reducing processing overhead while maintaining reliability through consistent state replication.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If timer nodes are dynamically adjusted based on load, then scalability is improved, but system complexity increases

Engineering Contradiction:
Improveelastic scalabilityVSAvoidnode dynamic management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements self-service by enabling timer nodes to automatically join and leave the distributed system based on load conditions. Nodes can independently register with the coordinator and begin managing timeouts without manual intervention. When nodes need to leave or scale, they do so autonomously by notifying the coordinator, which updates its state accordingly. This self-service capability provides elastic scalability while minimizing the complexity of manual node management.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent uses feedback mechanisms where the coordinator monitors the state of distributed locks and timeout operations to dynamically adjust resource allocation. The system continuously gathers feedback on timer node performance and load distribution, using this information to optimize the number and placement of active timer nodes, thereby achieving scalability without proportional increases in complexity.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9733664B1Method for expiring fault-tolerant timers using distributed locks
Publication Date: 2017.08.15 ROXOR GAMING LTD
  • US9733664B1 patent drawing
  • US9733664B1 patent drawing
  • US9733664B1 patent drawing

AI summary

Systems, methods, and articles of manufacture provide for fault-tolerant timers, such as in an online gaming environment. Fault-tolerant timers may, for example, be provided by implementing specific methods for expiring a timer, such as by utilizing broadcast notices and distributed locks.