IP Library › Granted Patent US 10,887,419
Granted Patent B2
US 10,887,419 · App. 15/375,028 · Granted Jan 5, 2021

Fast cache purge optimization handling of unavailable nodes

Inventors: Ashok Anand (Bangalore, IN); Manjunath Bharadwaj Subramanya (Bangalore, IN)
Assignee: Akamai Technologies, Inc.
H04L67/2852H04L49/90
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 10,887,419
App. No.
15/375,028
Granted
Jan 5, 2021
Kind
B2
Abstract

Processing a purge request is disclosed. In an embodiment, the purge request is received from a node, where the purge request is for a next purge instruction and the node has an associated queue of purge instruction(s) with associated timestamps. In response to receiving the purge request, providing an unprocessed purge instruction having a time stamp before a threshold time. After processing the purge instruction having a timestamp before the threshold time, processing the remaining purge instructions as follows: indicating an availability state of the node as transitional, storing a current time value as a reference time value, processing in chronological order those remaining purge instructions in the queue with a time value chronologically before the reference time value, and indicating an availability state of the node as available.

Claims (39)

1. A method for processing a purge request, comprising:

receiving the purge request from a node, wherein the purge request is for a next purge instruction and the node has an associated queue of one or more purge instructions with associated timestamps;

in response to receiving the purge request, providing an unprocessed purge instruction having a timestamp before a threshold time; and

after processing the purge instruction having a timestamp before the threshold time, processing remaining purge instructions as follows:

indicating an availability state of the node as transitional;

storing a current time value as a reference time value;

processing, in chronological order, those remaining purge instructions in the queue with a time value chronologically before the reference time value; and

indicating an availability state of the node as available.

2. The method of claim 1 , wherein the next purge instruction is provided by a queue of a node unavailable to serve/distribute content to users.

3. The method of claim 2 , wherein the unavailable node is a node with a status of being offline.

4. The method of claim 2 , wherein an availability status of the unavailable node is tracked by a content distribution manager.

5. The method of claim 2 , wherein the unavailable node sends the purge request to begin processing a backlog of one or more purge instructions.

6. The method of claim 1 , wherein the providing the unprocessed purge instruction having a timestamp before the threshold time includes determining that a time value associated with the next purge instruction is chronologically before a threshold time.

7. The method of claim 1 , wherein the node is included in a content distribution network having a plurality of nodes, and each node in the content distribution network has a respective associated queue of one or more purge instructions.

8. The method of claim 1 , further comprising determining that there is at least one unprocessed purge instruction having a timestamp before a threshold time, and wherein the threshold time is a time when the determination is made.

9. The method of claim 1 , wherein the threshold time is a dynamic value determined by subtracting a predetermined amount of a time period from a current time.

10. The method of claim 1 , wherein the threshold time is selected based at least in part on an estimated time for verifying that first-in-first-out processing of queued purge instructions has reached a state of the queue where any purge instruction still waiting in the queue to be processed has been added to the queue.

11. The method of claim 1 , wherein the threshold time is selected based at least in part on a time allotted for purge instructions to remain queued in the queue before the node transitions to a transitional state.

12. The method of claim 1 , wherein the threshold time is the time when a first purge instruction was requested from the queue of the node after the node became unavailable.

13. The method of claim 1 , wherein in a transitional state, the node is not currently serving/distributing requested content as part of a content distribution network.

14. The method of claim 1 , wherein in the transitional state, the node does not provide a process completion confirmation to a purge request.

15. The method of claim 1 , wherein the reference time value is a time when the node enters a transitional state.

16. A system for processing a purge request, comprising:

a communication interface configured to receive the purge request from a node, wherein the purge request is for a next purge instruction and the node has an associated queue of one or more purge instructions with associated timestamps

a processor configured to:

in response to receiving the purge request, providing an unprocessed purge instruction having a timestamp before a threshold time; and

after processing the purge instruction having a timestamp before the threshold time, processing remaining purge instructions as follows:

indicating an availability state of the node as transitional;

storing a current time value as a reference time value;

processing, in chronological order, those remaining purge instructions in the queue with a time value chronologically before the reference time value; and

indicating an availability state of the node as available.

17. A computer program product embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving a purge request from a node, wherein the purge request is for a next purge instruction and the node has an associated queue of one or more purge instructions with associated timestamps;

in response to receiving the purge request, providing an unprocessed purge instruction having a timestamp before a threshold time; and

after processing the purge instruction having a timestamp before the threshold time, processing remaining purge instructions as follows:

indicating an availability state of the node as transitional;

storing a current time value as a reference time value;

processing, in chronological order, those remaining purge instructions in the queue with a time value chronologically before the reference time value; and

indicating an availability state of the node as available.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2020
From: ANAND, ASHOK; SUBRAMANYA, MANJUNATH BHARADWAJ
To: INSTART LOGIC, INC.
Reel/Frame 052375/0071 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2020
From: INSTART LOGIC, INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 052375/0085 →
Continuity (3)
Continuation 14280413 · May 16, 2014
Continuation In Part 14206458 · Mar 12, 2014
Related Publication 20170094012A1 · Mar 30, 2017
Cited By (2)
US 12,360,911 US 12,627,748