On-demand resource capacity in a serverless function-as-a-service infrastructure
US-2023300086-A1 · Sep 21, 2023 · US
US12547461B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12547461-B2 |
| Application number | US-202218049125-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 24, 2022 |
| Priority date | Oct 24, 2022 |
| Publication date | Feb 10, 2026 |
| Grant date | Feb 10, 2026 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computer implemented method manages function execution in a container. A dispatcher in the container running in a computer system executes a function initialization in response to a first request for a function. The dispatcher in the container running in the computer system creates group of handlers in response to receiving a group of requests for the function. The dispatcher in the container running in the computer system sends the group of requests to the group of handlers in response to receiving the group of requests. The dispatcher in the container running in the computer system executes the group of requests using the group of handlers.
Opening claim text (preview).
What is claimed is: 1 . A computer implemented method for managing function execution in a container, the computer implemented method comprising: executing, by a dispatcher in the container running in a computer system, a function initialization in response to a first request for a function; creating, by the dispatcher in the container running in the computer system, a group of handlers in response to receiving a group of requests for the function, wherein the group of handlers is at least two handlers; and executing, by the dispatcher in the container running in the computer system, the group of requests using the group of handlers. 2 . The computer implemented method of claim 1 further comprising: creating, by the dispatcher in the container running in the computer system, a new handler for the group of handlers in response to receiving a new request and processing resources being available to create the new handler. 3 . The computer implemented method of claim 1 further comprising: assigning, by the dispatcher in the container running in the computer system, processing resources to the container, wherein the processing resources is selected from one of a group of processor units and a group of cores. 4 . The computer implemented method of claim 1 further comprising: marking, by the dispatcher in the container running in the computer system, a handler in the group of handlers as blocked in response to the handler making a blocking call. 5 . The computer implemented method of claim 1 further comprising: recording, by the dispatcher in the container running in the computer system, a sequence order for the group of handlers based on when handlers in the group of handlers are created to handle requests. 6 . The computer implemented method of claim 5 further comprising: determining, by the dispatcher in the container running in the computer system, whether to suspend a handler in the group of handlers or resume the handler in the group of handlers based on the sequence order for the group of handlers. 7 . The computer implemented method of claim 5 further comprising: suspending, by the dispatcher in the container running in the computer system, a new handler, tracking the new handler, and marking the new handler as ready in response to a number of a set of cores for the container being unavailable for the new handler; and resuming, by the dispatcher in the container running in the computer system, the new handler based on the sequence order of the handler in response to the number of the set of cores becoming available for the new handler. 8 . The computer implemented method of claim 1 further comprising: intercepting, by the dispatcher in the container running in the computer system, blocking calls made by the group of handlers; tracking, by the dispatcher in the container running in the computer system, a state of a handler making a blocking call; making, by the dispatcher in the container running in the computer system, the blocking call; and passing, by the dispatcher in the container running in the computer system, a value received in a response to the handler making the blocking call. 9 . The computer implemented method of claim 8 further comprising: resuming, by the dispatcher in the container running in the computer system, the handler in response to a number of a set of cores being available for the handler. 10 . The computer implemented method of claim 8 further comprising: keeping, by the dispatcher in the container running in the computer system, the handler suspended and marking the handler as ready in response to a number of a set of cores being unavailable. 11 . The computer implemented method of claim 8 further comprising: resuming, by the dispatcher in the container running in the computer system, the handler in response to a younger running handler being present in the group of handlers; and suspending, by the dispatcher in the container running in the computer system, the younger running handler. 12 . The computer implemented method of claim 1 further comprising: coalescing, by the dispatcher in the container running in the computer system, remote data accesses by the group of handlers. 13 . The computer implemented method of claim 12 , wherein coalescing, by the dispatcher in the container running in the computer system, remote storage accesses by the group of handlers comprises: recording, by the dispatcher in the container running in the computer system, remote data access requests from handlers in the group of handlers for a same data; making, by the dispatcher in the container running in the computer system, a single remote data access request for the same data; and returning, by the dispatcher in the container running in the computer system, the response to the single remote data access request to the handlers in the group of handlers making the remote data access requests for the same data. 14 . The computer implemented method of claim 12 , wherein coalescing remote storage accesses by the group of handlers comprises: combining, by the dispatcher in the container running in the computer system, remote data access requests to access data in a same data source into a vector request. 15 . The computer implemented method of claim 1 further comprising: reading, by the group of handlers in the container running in the computer system, shared memory pages initialized for the function during the function initialization; creating, by a handler in the group of handlers in the container running in the computer system, a copy of a shared memory page in the shared memory pages for a handler in the group of handlers in response to a write; and reading and writing, by the handler in the group of handlers in the container running in the computer system, to the copy of the shared memory page on subsequent reads and writes to the shared memory page by the handler. 16 . The computer implemented method of claim 1 , wherein the group of handlers use a shared file used to execute the function, wherein a temporary file is created for a handler in the group of handlers for writes to the shared file, and wherein the temporary file is used by the handler for subsequent reads and writes in place of the shared file. 17 . A computer system comprising: a set of processor units, wherein the set of processor units executes program instructions to: execute, a dispatcher in a container running in a computer system, a function initialization in response to a first request for a function; create, by the dispatcher in the container running in the computer system, group of handlers in response to receiving a group of requests for the function, wherein the group of handlers is at least two handlers; and execute, by the dispatcher in the container running in the computer system, the group of requests using the group of handlers. 18 . The computer system of claim 17 , wherein the set of processor units executes the program instructions to: create a new handler for the group of handlers in response to receiving a new request, none of the group of handlers being available to handle the new request, and processing resources being available to create the new handler. 19 . The computer system of claim 17 , wherein the set of processor units executes the program instructions to: assign processing resources to the container, wherein the processing resources is selected from one of a group of processor units and a group of cores. 20 . The
Program synchronisation; Mutual exclusion, e.g. by means of semaphores · CPC title
considering data affinity · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.