Replication Group Server Sequence Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In current online gaming systems, location servers managing login/logout information for multiple service servers face excessive load and inconsistent state synchronization due to varying message sequences across replication groups, leading to differing user state determinations among member servers.

Innovation Solution

A system and method for synchronizing member servers within a replication group by maintaining a server sequence, processing external messages to generate and transmit state update messages, and adjusting sequences to ensure all servers have the same state information, using techniques like anycast and multicasting for message delivery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single location server is used to collectively manage login/logout information of users in all service servers, then user state information can be centrally managed, but system load on the location server becomes excessively heavy

Engineering Contradiction:
Improveuser state information managementVSAvoidsystem load
Core Design Contradiction:
ReliabilityVSPower

Solution Approach 1:

The patent divides the single location server into multiple location servers forming a replication group. Each location server maintains a subset of user state information and replicates changes to other members of the replication group. This segmentation distributes the system load across multiple servers while maintaining centralized management capabilities through the replication mechanism.

Inventive Principle:
Principle #1Segmentation

2Power

If multiple location servers form a replication group to distribute system load, then server load is reduced, but message transmission sequence varies across servers leading to inconsistent state information

Engineering Contradiction:
Improvesystem loadVSAvoidstate information consistency
Core Design Contradiction:
PowerVSStability of the object's composition

Solution Approach 1:

The patent introduces a preliminary sequencing mechanism where messages are assigned sequence numbers before transmission to the replication group. Each location server receives messages with embedded sequence information and processes them in the correct order based on these sequence numbers. This preliminary action of sequencing ensures that all servers process messages in the same logical sequence regardless of physical transmission variations, thereby maintaining state information consistency across the replication group.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If location servers process messages in different sequences due to network transmission variations, then message delivery is flexible, but user state determination becomes inconsistent across servers

Engineering Contradiction:
Improvemessage delivery flexibilityVSAvoiduser state determination consistency
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where each location server monitors and compares its message sequence with other servers in the replication group. When a server detects that its sequence diverges from the expected sequence (based on feedback from other servers), it adjusts its processing order to match the correct sequence. This feedback loop ensures that all servers converge to the same state determination despite initial variations in message reception timing.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9338232B2Method and system for synchronizing status of member servers belonging to same replication group
Publication Date: 2016.05.10 NHN ENTERTAINMENT
  • US9338232B2 patent drawing
  • US9338232B2 patent drawing
  • US9338232B2 patent drawing

AI summary

A system for synchronizing a state of a member server with a state of other member servers belonging to a same replication group, the system including: a server sequence storage unit storing a first server sequence; a message receiving unit receiving an external message from a service server and receiving a second state update message from a second member server belonging to the same replication group including the member server, the second state update message including a second server sequence; an external message processing unit, in response to the receiving the external message, increasing the first server sequence by a predetermined value, generating a first state update message including the first server sequence, and transmitting the first state update message to the second member server; and a state update message processing unit, in response to the receiving the second state update message, changing the first server sequence to the second server sequence when the second server sequence included in the second state update message is larger than the first server sequence stored in the server sequence storage unit.