IP Library Granted Patent US 8,166,100
Granted Patent B2
US 8,166,100 · App. 12/548,587 · Granted Apr 24, 2012

Cross site, cross domain session sharing without database replication

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 8,166,100
App. No.
12/548,587
Granted
Apr 24, 2012
Kind
B2
Abstract

A method of providing access to data via a public communications network includes the receiving a first data session request having a storage group mark, the storage group mark defining a server storage group, a load balancer route the request to a first server that processes request and any related session information, storing any altered first session data in a data storage. The load balancer receives a second request, wherein the second request also has the same storage group mark. The load balance selects a second server to respond to the second request. As before, the second server processes the second request and the altered first session data loaded from the data storage. After processing, the second server stores any altered second session data in the stored data on the first server as well as the second server and returns the altered second session data.

Claims (57)

1. A method of providing access to data via a public communications network, comprising:

receiving, by a first load balancer, a first data session request having a storage group mark;

routing, by the first load balancer, the first data session request to a first domain content server that has stored data that corresponds to the storage group mark;

retrieving, by the first domain content server from the stored data, first session data that is responsive to the first data session request;

processing the first session data to result in altered first session data;

storing, by the first domain content server, the altered first session data in the stored data;

receiving, by the first load balancer, a second data session request, wherein the second data session request also has the storage group mark;

selecting, by the first load balancer, a second domain server to respond to the second data session request;

retrieving, by the second domain content server from the stored data in the first domain content server, second session data that is responsive to the second data session request;

processing the second session data to result in altered second session data;

storing the altered second session data in the stored data on the first domain content server; and

returning, by the second domain content server to the first load balancer, the altered second session data.

2. The method of claim 1 , further comprising:

maintaining a plurality of additional domain content servers; and

maintaining a plurality of additional load balancers, wherein each load balancer is associated with at least one of the domain content servers.

3. The method of claim 2 , wherein if the attempting to retrieve second session data from the first domain content server fails, the method also comprises:

selecting a revised storage group; and

receiving, by the second domain content server from data stored on the second domain content server, data corresponding to the second session data request and the revised storage group,

and wherein the processing the second session data comprises applying a mark associated with the revised storage group to the second session data.

4. The method of claim 3 , wherein revised storage group does not include the first domain content server.

5. The method of claim 2 , wherein the stored data comprises a database that resides on the first domain content server and is not stored on any of the additional domain content servers.

6. The method of claim 1 , further comprising:

passing, by the first load balancer, the altered first session data to a client that initiated the first data session request.

7. The method of claim 6 , further comprising:

passing, by the first load balancer, the altered second session data to a client that initiated the second data session request.

8. A system for providing access to data via a communications network, the system comprising:

at least one first load balancer configured to receive data session requests from at least one client;

a first plurality of servers operably connected to the at least one first load balancer, the first plurality of servers being operably configured into at least two storage groups with at least two servers per storage group, wherein each server has a local database configured to store information related to data session information as well as storage group information; and

a plurality of server agents, wherein each server has a unique server agent, the server agents configured to communicate with other server agents associated with servers belonging to the same storage group.

9. The system of claim 8 , wherein the first plurality of servers are organized such that each storage group comprises at least a primary server and a secondary server.

10. The system of claim 8 , further comprising at least one second load balancer configured to receive data requests from the at least one client.

11. The system of claim 10 , further comprising a second plurality of servers operably connected to the at least one second load balancer, the second plurality of servers being organized into at least two storage groups, wherein each server has a local database configured to store information related to data session information as well as storage group information.

12. The system of claim 11 , wherein the second plurality of servers are organized such that each storage group comprises at least a primary server and a secondary server.

13. A method of providing access to data via a public communications network, comprising:

receiving, by a first load balancer, a first data session request having a storage group mark;

routing, by the first load balancer, the first data session request to a first domain content server that has stored data that corresponds to the storage group mark;

retrieving, by the first domain content server from the stored data, first session data that is responsive to the first data session request;

processing the first session data to result in altered first session data;

storing, by the first domain content server, the altered first session data in the stored data;

receiving, by a second load balancer, a second data session request, wherein the second data session request has a second storage group mark;

selecting, by the second load balancer, a second domain server to respond to the second data session request;

retrieving, by the second domain content server second session data that is responsive to the second data session request;

processing the second session data to result in altered second session data;

storing the altered second session data in the stored data on the second domain content server;

notifying the first domain content server to delete any session data related to the first request; and

returning, by the second domain content server to the second load balancer, the altered second session data.

14. The method of claim 13 , further comprising:

maintaining a plurality of additional domain content servers; and

maintaining a plurality of additional load balancers, wherein each load balancer is associated with at least one of the domain content servers.

15. The method of claim 14 , wherein if the attempting to retrieve second session data from the second domain content server fails, the method also comprises:

selecting a revised storage group; and

receiving, by the second domain content server from data stored on the second domain content server, data corresponding to the second session data request and the revised storage group,

and wherein the processing the second session data comprises applying a mark associated with the revised storage group to the second session data.

16. The method of claim 13 , further comprising:

passing, by the first load balancer, the altered first session data to a client that initiated the first data session request.

17. The method of claim 16 , further comprising:

passing, by the first load balancer, the altered second session data to a client that initiated the second data session request.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2025
From: GEN DIGITAL AMERICAS S.R.O.
To: GEN DIGITAL INC.
Reel/Frame 071771/0767 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2025
From: AVAST SOFTWARE S.R.O.
To: GEN DIGITAL AMERICAS S.R.O.
Reel/Frame 071777/0341 →
RELEASE OF SECURITY INTEREST Recorded Mar 26, 2021
From: CREDIT SUISSE INTERNATIONAL, AS COLLATERAL AGENT
To: AVAST SOFTWARE, S.R.O.; AVAST SOFTWARE B.V.
Reel/Frame 055726/0407 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2018
From: AVAST SOFTWARE B.V.
To: AVAST SOFTWARE S.R.O.
Reel/Frame 046876/0165 →
MERGER Recorded Oct 11, 2017
From: AVG TECHNOLOGIES B.V.
To: AVAST SOFTWARE B.V.
Reel/Frame 043841/0899 →
MERGER Recorded Oct 11, 2017
From: AVG NETHERLANDS B.V.
To: AVG TECHNOLOGIES HOLDINGS B.V.
Reel/Frame 043841/0615 →
MERGER Recorded Oct 11, 2017
From: AVG TECHNOLOGIES HOLDINGS B.V.
To: AVG TECHNOLOGIES B.V.
Reel/Frame 043841/0844 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2017
From: AVG NETHERLANDS B.V.
To: AVAST SOFTWARE B.V.
Reel/Frame 043603/0008 →
SECURITY INTEREST Recorded Jan 27, 2017
From: AVG NETHERLANDS B.V.
To: CREDIT SUISSE INTERNATIONAL, AS COLLATERAL AGENT
Reel/Frame 041111/0914 →
RELEASE OF SECURITY INTEREST Recorded Oct 3, 2016
From: HSBC BANK USA, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: LOCATION LABS, INC.; AVG NETHERLANDS B.V.
Reel/Frame 040205/0406 →