Resource conservation for containerized systems

US10922138B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10922138-B2
Application numberUS-201816174907-A
CountryUS
Kind codeB2
Filing dateOct 30, 2018
Priority dateOct 30, 2018
Publication dateFeb 16, 2021
Grant dateFeb 16, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for conserving resources in a distributed system includes receiving an event-criteria list from a resource controller. The event-criteria list includes one or more events watched by the resource controller and the resource controller controls at least one target resource and is configured to respond to events from the event-criteria list that occur. The method also includes determining whether the resource controller is idle. When the resource controller is idle, the method includes terminating the resource controller, determining whether any event from the event-criteria list occurs after terminating the resource controller, and, when at least one event from the event-criteria list occurs after terminating the resource controller, recreating the resource controller.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving, at data processing hardware, an event-criteria list from a resource controller, the event-criteria list comprising one or more events watched by the resource controller, the resource controller controlling at least one target resource and configured to respond to the one or more events from the event-criteria list that occur; determining, by the data processing hardware, whether the resource controller is idle; and when the resource controller is idle: terminating, by the data processing hardware, the resource controller; determining, by the data processing hardware, whether any event from the event-criteria list occurs after terminating the resource controller; and when at least one event of the one or more events from the event-criteria list occurs after terminating the resource controller, recreating, by the data processing hardware, the resource controller. 2. The method of claim 1 , wherein determining whether the resource controller is idle comprises polling the resource controller. 3. The method of claim 1 , wherein determining whether the resource controller is idle comprises: analyzing events that have occurred during a threshold period of time; and determining that the resource controller is idle when none of the one or more events on the event-criteria list have occurred within the threshold period of time. 4. The method of claim 1 , wherein terminating the resource controller comprises scaling a deployment size of the resource controller to zero. 5. The method of claim 1 , wherein recreating the resource controller comprises scaling a deployment size of the resource controller to one. 6. The method of claim 1 , wherein the event-criteria list comprises a timer event. 7. The method of claim 1 , wherein determining whether any event on the event-criteria list occurred comprises polling data to determine when any of the one or more events on the event-criteria list occur. 8. The method of claim 1 , further comprising, after terminating the resource controller: determining, by the data processing hardware, whether a terminate time period since terminating the resource controller satisfies a threshold period of time; and in response to determining that the terminate time period does satisfy the threshold period of time, recreating, by the data processing hardware, the resource controller. 9. The method of claim 1 , further comprising, after terminating the resource controller: determining, by the data processing hardware, whether the resource controller requires maintenance or reconfiguration; and in response to determining that the resource controller requires maintenance or reconfiguration, recreating, by the data processing hardware, the resource controller. 10. The method of claim 1 , wherein receiving the event-criteria list from the resource controller comprises receiving a plurality of event-criteria lists from a plurality of resource controllers executing simultaneously, each event-criteria list associated with a respective resource controller. 11. The method of claim 10 , wherein a quantity of the resource controllers executing simultaneously is based upon a total amount of available system resources. 12. The method of claim 10 , further comprising: determining, by the data processing hardware, whether any event on multiple event-criteria lists occurred simultaneously; and in response to determining that an event on multiple event-criteria lists occurred simultaneously, recreating, by the data processing hardware, a group of resource controllers sequentially, each resource controller of the group of resource controllers associated with a respective event-criteria list of the multiple event-criteria lists. 13. The method of claim 12 , wherein recreating the group of resource controllers sequentially comprises recreating the group of resource controllers sequentially based on a priority of each resource controller. 14. The method of claim 1 , further comprising recreating, by the data processing hardware, the resource controller based on a system metric. 15. The method of claim 14 , wherein the system metric comprises a measure of system resources. 16. The method of claim 1 , wherein the event-criteria list comprises a dynamic event-criteria list. 17. The method of claim 1 , wherein terminating the resource controller further comprises: determining whether a measure of system resources satisfies a system resource threshold; and when the measure of system resources fails to satisfy the system resource threshold, terminating the resource controller. 18. The method of claim 17 , wherein the measure of system resources comprises a measure of system processing/computing, network access, storage, and/or memory resources. 19. The method of claim 1 , wherein receiving the event-criteria list from the resource controller comprises receiving the event-criteria list from an HTTP endpoint. 20. The method of claim 1 , wherein the resource controller is associated with a system resource reservation and terminating the resource controller removes the system resource reservation. 21. A system comprising: data processing hardware; and memory hardware in communication with the data processing hardware, the memory hardware storing instructions that when executed on the data processing hardware cause the data processing hardware to perform operations comprising: receiving an event-criteria list from a resource controller, the event-criteria list comprising one or more events watched by the resource controller, the resource controller controlling at least one target resource and configured to respond to the one or more events from the event-criteria list that occur; determining whether the resource controller is idle; and when the resource controller is idle: terminating the resource controller; determining whether any event from the event-criteria list occurs after terminating the resource controller; and when at least one event of the one or more events from the event-criteria list occurs after terminating the resource controller, recreating the resource controller. 22. The system of claim 21 , wherein determining whether the resource controller is idle comprises polling the resource controller. 23. The system of claim 21 , wherein determining whether the resource controller is idle comprises: analyzing events that have occurred during a threshold period of time; and determining that the resource controller is idle when none of the one or more events on the event-criteria list have occurred within the threshold period of time. 24. The system of claim 21 , wherein terminating the resource controller comprises scaling a deployment size of the resource controller to zero. 25. The system of claim 21 , wherein recreating the resource controller comprises scaling a deployment size of the resource controller to one. 26. The system of claim 21 , wherein the event-criteria list comprises a timer event. 27. The system of claim 21 , wherein determining whether any event on the event-criteria list occurred comprises polling data to determine when any of the one or more events on the event-criteria list occur. 28. The system of claim 21 , wherein the operations further comprise, after terminating the resource controller: determining whether a terminate time period since terminatin

Assignees

Inventors

Classifications

  • the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • G06F9/5022Primary

    Mechanisms to release resources · CPC title

  • the resource being the memory · CPC title

  • G06F9/542Primary

    Event management; Broadcasting; Multicasting; Notifications · CPC title

  • to service a request · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10922138B2 cover?
A method for conserving resources in a distributed system includes receiving an event-criteria list from a resource controller. The event-criteria list includes one or more events watched by the resource controller and the resource controller controls at least one target resource and is configured to respond to events from the event-criteria list that occur. The method also includes determining…
Who is the assignee on this patent?
Google Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/5022. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 16 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).