IP Library Granted Patent US 7,747,760
Granted Patent B2
US 7,747,760 · App. 10/901,843 · Granted Jun 29, 2010

Near real-time data center switching for client requests

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,747,760
App. No.
10/901,843
Granted
Jun 29, 2010
Kind
B2
Abstract

A networked computer system provides a way to quickly switch to a backup data center when a primary data center fails. Each data center includes a redirect table that specifies a geographical area corresponding to each user. The redirect table is replicated on one or more data centers so that each data center has the same information. When a data center fails, the redirect table in one of the non-failed data centers is updated to specify a new data center for each client that used the failed data center as its primary data center. A network dispatcher recognizes that the failed data center is unavailable, and routes a request to the backup data center. Network routing logic then issues a redirection command that causes all subsequent requests from that client to be redirected directly to the backup data center.

Claims (32)

1. A method for routing data requests to a first server computer system from a client computer system to a second server computer system, the method comprising the steps of:

(A) bi-directionally replicating data corresponding to the data requests between the first server computer system and the second server computer system;

(B) providing a redirect table in each of the first and second server computer systems that specifies a plurality of users, corresponding geographical assignments, and information that allows determining corresponding server assignments for each of the geographical assignments, wherein data including the redirect table in the first server computer system is bi-directionally replicated with the second server computer system;

(C) detecting when a failure occurs in the first server computer system;

(D) in response to detecting when a failure occurs in step (C), updating the redirect table in the second computer system to specify a new geographical assignment for a user of the client computer system;

(E) the second computer system receiving a first data request from the user of the client computer system, wherein step (E) comprises the steps of:

the user submitting a data request that resolves to a network dispatcher;

the network dispatcher routing the data request to the second server computer system;

the second server computer system prompting the user to log on;

the user logging on via a sign-on request that resolves to the network dispatcher; and

the network dispatcher routing the sign-on request to the second server computer system;

(F) determining from the new geographical assignment for the user in the redirect table in the second computer system the second server computer system is assigned to handle the first data request; and

(G) in response to the first data request from the client computer system, issuing a redirect command to the client computer system to cause subsequent data requests by the client computer system to the first server computer system to be automatically directed to the second server computer system to provide replicated data in response to the subsequent data requests.

2. The method of claim 1 further comprising the step of determining from the redirect table in the second server computer system information that is used in generating the redirect command.

3. The method of claim 1 further comprising the steps of:

monitoring health of the first and second server computer systems; and

updating the redirect table in one of the first and second server computer systems to replace at least one server assignment to a failed server computer system with at least one corresponding server assignment to a server computer system that has not failed.

4. A method for configuring a networked system to perform a method for routing data requests from a client computer, comprising:

(a) configuring bi-directional replication of data corresponding to the data requests between a first server computer and a second server computer;

(b) configuring a first server computer and a second server computer to each provide a redirect table that specifies a plurality of users, corresponding geographical assignments, and information that allows determining corresponding server assignments for each of the geographical assignments, the redirect table in the first server computer system being bi-directionally replicated with the redirect table in the second server computer;

(c) configuring a network dispatcher to detect when a failure occurs in the first server computer and to route requests for the first server computer by the client computer to the second server computer;

(d) in response to detecting when a failure occurs in step (c), updating the redirect table in the second computer system to specify a new geographical assignment for a user of the client computer;

(e) the second computer system receiving a first data request from the user of the client computer, wherein step (e) comprises the steps of:

the user submitting a data request that resolves to a network dispatcher;

the network dispatcher routing the data request to the second server computer system;

the second server computer system prompting the user to log on;

the user logging on via a sign-on request that resolves to the network dispatcher; and

the network dispatcher routing the sign-on request to the second server computer system;

(f) determining from the new geographical assignment for the user in the redirect table in the second computer system the second server computer system is assigned to handle the first data request; and

(g) configuring network routing logic to issue a redirect commend to the client computer to cause subsequent data requests by the client computer to the first server computer to be automatically directed to the second server computer to provide replicated data in response to the subsequent data requests.

5. The method of claim 1 wherein the redirect command is a hypertext transfer protocol (HTTP) redirect command.

6. The method of claim 4 wherein the redirect command is a hypertext transfer protocol (HTTP) redirect command.

Assignments (8)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL 062079, FRAME 0677) Recorded Mar 3, 2026
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 075015/0574 →
RELEASE OF SECURITY INTEREST Recorded Apr 30, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 071127/0240 →
RELEASE OF SECURITY INTEREST Recorded Mar 27, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: X CORP. (F/K/A TWITTER, INC.)
Reel/Frame 070670/0857 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 062079/0677 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0001 →
SECURITY INTEREST Recorded Oct 28, 2022
From: TWITTER, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 061804/0086 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: TWITTER, INC.
Reel/Frame 032075/0404 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2004
From: AMRA, NADIR KHALID; PATERSON, KEVIN GLYNN; SIMONSON, STEVEN JOHN; SMET, ARTHUR DOUGLAS
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 015085/0325 →