Distributed and fault tolerant server system and method
First Claim
1. A server system, comprising:
- a Log-In Module;
at least one of a Location Module, Command Module, and Text Module; and
an Online Database in communication with said Log-In Module and said at least one of a Location Module, Command Module, and Text Module, the Online Database comprising a plurality of servers, wherein in response to a request to log in a user, said Log-In Module obtains record counts from each of the plurality of servers in the Online Database, determines which of the plurality of servers has the least amount of records and designates one of the plurality of servers with the least amount of records to perform functions on behalf of the user.
1 Assignment
0 Petitions
Accused Products
Abstract
A distributed and fault tolerant server system and method that includes a plurality of modules networked together. A Log-In Module receives a request from a user to log onto the system and searches clusters of nodes in at least an Online Database, and perhaps other modules, to determine which of the nodes has the fewest number of records. The node with the fewest number of records is selected to act on behalf of the user. To achieve fault tolerance and redundancy, each node is paired with a sister node and each node in the pair mirrors its contents to its sister, whereby when one of the sisters fails, the other can immediately take over the functionality of the failed sister. In a preferred embodiment, the system and method is implemented using a Unix-based system such as Linux and is designed to operate massively multiplayer (MMP) online games.
-
Citations
38 Claims
-
1. A server system, comprising:
-
a Log-In Module;
at least one of a Location Module, Command Module, and Text Module; and
an Online Database in communication with said Log-In Module and said at least one of a Location Module, Command Module, and Text Module, the Online Database comprising a plurality of servers, wherein in response to a request to log in a user, said Log-In Module obtains record counts from each of the plurality of servers in the Online Database, determines which of the plurality of servers has the least amount of records and designates one of the plurality of servers with the least amount of records to perform functions on behalf of the user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of conducting a massively multiplayer online game, comprising:
-
receiving a request from a user to log into an online game;
obtaining record counts from each of a plurality of nodes in an Online Database;
determining which node of the plurality of nodes has the fewest number of records;
appending a blank record to the node with the fewest number of records;
updating the blank record with user information;
assigning the user to a node in at least one of a Location Module, Command Module, and Text Module; and
receiving a message that is to be directed to said at least one of a Location Module, Command Module, and Text Module. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A system for coordinating interactions among a plurality of remote users, comprising:
-
an online database that stores records regarding each of the plurality of remote users a plurality of interconnected modules in communication with the online database, wherein each module is responsible for at least one primary function; and
a login module via which the plurality of remote users access the system and which is operable to access individual nodes in the online database and to determine which of those nodes are handling the fewest number of records. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A system for coordinating interactions among a plurality of remote users, comprising:
-
means for storing records regarding each of the plurality of remote users;
means for interconnecting modules that are in communication with the means for storing records, wherein each module is responsible for at least one primary function; and
means for logging in remote users that is operable to access individual nodes in the means for stroring records and to determine which of those nodes are handling the fewest number of records. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38)
-
Specification