IP Library › Granted Patent US 12,118,596
Granted Patent B2
US 12,118,596 · App. 18/536,473 · Granted Oct 15, 2024

Systems and methods for server load balancing based on correlated events

Inventors: Xiaoli Liang (Toronto, CA); Kathryn Tang (Victoria, CA); Gregory Clarke (Belleville, CA); Milan Sreckovic (Toronto, CA); Kunal Kohli (Niagara Falls, CA)
Assignee: Shopify Inc.
G06Q30/0603G06Q30/0613G06Q30/0641
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 12,118,596
App. No.
18/536,473
Granted
Oct 15, 2024
Kind
B2
Abstract

Methods and systems for balancing online stores amongst servers. Detecting a flash sale associated with a first online store. Identifying an occurrence of a first event correlated to the flash sale associated with the first online store. Identifying a second online store associated with a second event corresponding to the first event. Responsive to identifying the second online store associated with the second event corresponding to the first event, moving the second online store from a first server to a second server.

Claims (40)

1. A computer-implemented method of balancing online stores amongst servers, the method comprising:

detecting a flash sale associated with a first online store;

identifying an occurrence of a first event correlated to the flash sale associated with the first online store;

identifying a second online store distinct from the first online store and associated with a second event corresponding to the first event; and

responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event:

ceasing to service, by a first server, requests associated with the second online store; and

configuring a second server to service requests associated with the second online store and commencing to service, by the second server, requests associated with the second online store.

2. The method of claim 1 , further comprising, responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event, configuring a router to cease directing requests corresponding to the second online store to the first server.

3. The method of claim 2 , further comprising, responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event, configuring the router to queue any new requests until the second server is ready to begin servicing requests associated with the second online store.

4. The method of claim 1 , wherein configuring the second server includes transferring an asset to the second server.

5. The method of claim 4 , wherein configuring the second server further includes configuring an application hosted on the second server with the transferred asset.

6. The method of claim 1 , wherein configuring the second server includes transferring an asset associated with the second online store to the second server.

7. The method of claim 1 , wherein configuring the second server includes transferring an asset stored on the first server to the second server.

8. The method of claim 1 , wherein configuring the second server includes deploying a web application on the second server.

9. The method of claim 1 , wherein the second online store is hosted on a virtual server and configuring the second server includes starting the virtual server on the second server.

10. The method of claim 1 , further comprising, responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event, updating routing data to direct requests associated with the second online store to the second server.

11. A system, the system comprising:

a processor; and

a memory storing computer-executable instructions that, when executed by the processor, are to cause the processor to:

detect a flash sale associated with a first online store;

identify an occurrence of a first event correlated to the flash sale associated with the first online store;

identify a second online store distinct from the first online store and associated with a second event corresponding to the first event; and

responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event:

cease to service, by a first server, requests associated with the second online store; and

configure a second server to service requests associated with the second online store and commencing to service, by the second server, requests associated with the second online store.

12. The system of claim 11 , wherein the instructions, when executed by the processor, are to further cause the processor to, responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event, configure a router to cease directing requests corresponding to the second online store to the first server.

13. The system of claim 12 , wherein the instructions, when executed by the processor, are to further cause the processor to, responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event, configure the router to queue any new requests until the second server is ready to begin servicing requests associated with the second online store.

14. The system of claim 11 , wherein configuring the second server includes transferring an asset to the second server.

15. The system of claim 14 , wherein configuring the second server further includes configuring an application hosted on the second server with the transferred asset.

16. The system of claim 11 , wherein configuring the second server includes transferring an asset associated with the second online store to the second server.

17. The system of claim 11 , wherein configuring the second server includes transferring an asset stored on the first server to the second server.

18. The system of claim 11 , wherein configuring the second server includes deploying a web application on the second server.

19. The system of claim 11 , wherein the second online store is hosted on a virtual server and configuring the second server includes starting the virtual server on the second server.

20. A non-transitory computer-readable medium storing processor-executable instructions that, when executed by one or more processors, are to cause the one or more processors to:

detect a flash sale associated with a first online store;

identify an occurrence of a first event correlated to the flash sale associated with the first online store;

identify a second online store distinct from the first online store and associated with a second event corresponding to the first event; and

responsive to identifying the second online store distinct from the first online store and associated with the second event corresponding to the first event:

cease to service, by a first server, requests associated with the second online store; and

configure a second server to service requests associated with the second online store and commencing to service, by the second server, requests associated with the second online store.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2023
From: LIANG, XIAOLI; TANG, KATHRYN; CLARKE, GREGORY; SRECKOVIC, MILAN; KOHLI, KUNAL
To: SHOPIFY INC.
Reel/Frame 065840/0001 →
Continuity (2)
Continuation 17408777 · Aug 23, 2021
Related Publication 20240104618A1 · Mar 28, 2024