Prosecution Insights
Last updated: May 29, 2026
Application No. 18/478,476

ON-DEMAND CODE EXECUTION COMPUTING RESOURCE MANAGEMENT

Non-Final OA §103§112
Filed
Sep 29, 2023
Examiner
WU, QING YUAN
Art Unit
2199
Tech Center
2100 — Computer Architecture & Software
Assignee
Amazon Technologies, Inc.
OA Round
1 (Non-Final)
91%
Grant Probability
Favorable
1-2
OA Rounds
2m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 91% — above average
91%
Career Allowance Rate
690 granted / 761 resolved
+35.7% vs TC avg
Moderate +11% lift
Without
With
+11.0%
Interview Lift
resolved cases with interview
Typical timeline
2y 10m
Avg Prosecution
15 currently pending
Career history
780
Total Applications
across all art units

Statute-Specific Performance

§101
14.0%
-26.0% vs TC avg
§103
43.1%
+3.1% vs TC avg
§102
14.5%
-25.5% vs TC avg
§112
19.0%
-21.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 761 resolved cases

Office Action

§103 §112
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Claims 1-20 are presented for examination. Requirement for Information - 37 C.F.R. § 1.105 Applicant and Assignee of this application are required under 37 C.F.R. 1.105 to provide the following that the Examiner has determined is reasonably necessary to the examination of this application. In the IDS filed on 12/29/23, applicants submitted a total of 45 pages of citations. In total, the IDS cited 1,155 references. The extraordinary large number of references pose a serious burden on the Office. The instant claims are drawn to a system and method in performing the increase/allocation of computing resources to a virtual computing environment for a synchronous process or request-response process or process executing according to a request-response protocol of an application executing within the virtual computing environment in response to pending workload for execution by the synchronous process or request-response process or process executing according to the request-response protocol of the application and decreasing the amount of computing resources allocated to the virtual computing environment to a set/preset baseline for asynchronous process or background process or process executing outside of the request-response protocol of the application when there is no pending workload for execution by the synchronous process or request-response process or process executing according to the request-response protocol. The IDS contains numerous references which do not appear to be related to or material to the examination of the claimed subject matter of the instant application. Herein, the Examiner has considered a sample of 30 references from the first two pages of the IDS filed on 12/29/23 including: US Patent 8,793,676 dynamically identifying and loading a version of a runtime for custom code of a host application without modifying the host application is provided; US Patent 5,283,888 which directs to voice processing interface allowing access to a plurality of applications; US Patent 5,835,764 directs to a transaction processing system for executing transactional processes representing transactions integrated within a reduced kernel operating system; US Patent 5,970,488 directs to the access of a real-time distributed database; US Patent 5,983,197 direct to monitoring automatic transaction machines based on collected information in reducing the responsibility of human operator; US Patent 6,237,005 direct to a web server mechanism for processing transactions received from a web browser in an interpreted language execution environment; US Patent 6,260,058 directs to a process for controlling industrial operations under real-time conditions based in part on task priorities; US Patent 6,385,636 directs to a distributed processing system such that the server determine whether to perform user requested task based in part on the CPU load of the server; US Patent 8,756,696 disclosed the testing of potential malware, such as virus or trojans in a computer network using an isolated VM; US Patent 6,501,736 directs to increasing call capacity of a wireless communication system; US Patent 6,523,035 directs to integrating a plurality of disparate database utilities with a unified graphical user interface; US Patent 6,549,936 directs to job transferring method between two computers by sending a request from a first computer to a second computer, wherein the request contains a plurality of scripts to be executed; US Patent 6,708,276 directs to an architecture for extending Java security model allowing a user to explicitly deny permissions; US Patent 7,036,121 directs to maintaining software installed on client systems via network; US Patent 7,308,463 directs to a resolve agent for providing requested file mapping information for a file on a storage device; US Patent 7,360,215 directs to an application interface for analytical task based on input task request having input values and task name associated with analytical task of a particular type; US Patent 8,725,702 directs to repairing system files; US Patent 8,613,070 directs to interconnecting computing devices through orchestration framework that coordinates operation of a computing activity across multiple computing devices. A SSO credential is identified that a specific computing device of the computing devices uses to access a resource. The SSO credential is a session key. The SSO credential is provided to each computing device associated with the specific computing device. The SSO credential enables each computing device associated with the specific computing device to access the resource; US Patent 7,590,806 directs to filtering transactional memory operations using associative tables; US Patent 7,640,574 directs to authenticating client access to protected resource by a policy agent that intercept client access request and redirect to appropriate authentication gateway; US Patent 7,730,464 directs to contents of a cache of specialized code being interpreted into an intermediate language that is recompiled for execution in a managed execution environment in accordance with an automated process in a manner to minimize any impact on machine resources; US Patent 8,806,644 directs mining data from various sources indicative of functioning of an application in analyzing and detecting behaviors of the application in identifying potential malicious activities; US Patent 7,823,186 directs to applying security policies on assembly caches; US Patent 7,949,677 directs to providing authorized remote access to a computing environment for a client machine via a policy engine that makes access control decision based on received information about the client machine; US Patent 8,799,236 directs to detecting duplicate digital content such as words and text in an eBook to assist in online document publishing; US Patent 8,127,284 directs to on-demand loading of types of software code of a program from one computer to another computer executing the program; US Patent 8,146,073 directs to updating a software while it is running; US Patent 8,166,304 directs to support for multiple security policies on a unified authentication architecture; US Patent 8,601,323 directs advanced management of runtime errors in which a runtime error manager selects one or more error dumps generated in a computer system landscape. The runtime error manager filters one or more data portions from the selected error dumps. The filtered data portions are supplemented with additional information collected from the nodes of the computer system landscape, or received from external systems. The data portions and the supplemental data are used to assign users responsible to resolve one or more of the logged runtime errors. The data portions and the supplemental information are used to create and send notifications to the responsible users or to instantiate and manage workflows in behalf to the responsible users; and, NPL document “Subroutine” cited from Wikipedia directs an a sequence of program instructions that performs a specific task, in which none of these references reviewed appear to be relevant to performing the increase/allocation of computing resources to a virtual computing environment for a synchronous/request-response component/process of an application executing within the virtual computing environment in response to pending workload for execution by the synchronous/request-response component/process of the application and decreasing the amount of computing resources allocated to the virtual computing environment to a set/preset baseline for asynchronous/background component/process of the application when there is no pending workload for execution by the synchronous/request-response component/process. For this reason, the request for information is considered necessary to consider any reference cited by the applicant in the IDS filed on 12/29/23. One of the following information is required to consider any reference cited by the Applicant in the IDS filed on 12/29/23: Applicants are specifically required to point out which reference or references cited in the IDS filed on 12/29/23 disclose performing the increase/allocation of computing resources to a virtual computing environment for a synchronous/request-response component/process of an application executing within the virtual computing environment in response to pending workload for execution by the synchronous/request-response component/process of the application and decreasing the amount of computing resources allocated to the virtual computing environment to a set/preset baseline for asynchronous/background component/process of the application when there is no pending workload for execution by the synchronous/request-response component/process. Applicants are specifically required to point out which reference or references cited in the IDS filed on 12/29/23 are most relevant to the examination of the claims of the instant application. This requirement is an attachment of the enclosed Office action. A complete reply to the enclosed Office action must include a complete reply to this requirement. The time period for reply to this requirement coincides with the time period for reply to the enclosed Office action. Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. Claims 2-12 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. The following are unclear: As to claim 2, the limitation “determine that the request queue includes a second request” is unclear since as stated in claim 1, lines 24-27, a determination was already made “that the request queue contains no additional requests to be processed by the application” and that the provisioned computing resources was “decreased” as a result. For the purpose of examination, the limitation is treated as “determine that a second request is received in the request queue” for the remainder of this office action. As to claim 3, this claim is rejected for the same reason as claim 2 above. As to claim 4, this claim depends on claim 3 and is rejected based on dependency. As to claim 5, it is unclear what portion or allocation of resources are being reduced in the limitation “reduce allocation of computing resources to the first quantity of computing resources” in lines 16-17. More specifically, the amount or quantity of computing resources referred to or implied by “allocation of computing resources” is unclear. If applicant intend to refers to “allocated” amount of computing resources then applicant should consider explicitly claim “reduce the allocated amount computing resources back to the first quantity of computing resources” for the remainder of this office action. As to claims 6-12, these claims depend on claim 5 and are rejected for failing to obviate the deficiency of claim 5. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 1-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over US Patent 11,314,547 to Tang et al. (hereafter Tang) in view of US PG Pub. 2022/0383324 to Sheshadri et al. (hereafter Sheshadri). Tang was cited in applicant’s IDS filed on 3/11/25. As to claim 5, Tang teaches the invention substantially as claimed including a system comprising computer readable memory and one or more processors, wherein the system is configured to: configure a host computing device of a code execution system with application code configured to execute a first process according to a request-response protocol [block storage server/service, where customer data volumes stored on the block store server may each have a dedicated amount of bandwidth for execution of foreground task(s), col. 1, lines 62-66] and a second process that executes outside of the request-response protocol, [a remaining pool of the server's bandwidth can be shared amongst the volumes for execution of background tasks, col. 1, lines 62-66] wherein configuring the code execution system comprises allocating a first quantity of computing resources of the host computing device to execute the second process, wherein the first quantity of computing resources is a non-zero level [use of a background scheduler to prioritize the use of the shared background bandwidth among the various background tasks performed by a block storage server, col. 1, lines 66-67 and col. 2, lines 1-2; The background scheduler can ensure that background tasks do not exceed their assigned bandwidth when multiple background tasks are competing for bandwidth but may also enable a background task to use additional available bandwidth when no other background tasks are competing for resources, col. 2 lines 16-21; a portion of the server's bandwidth may be reserved for foreground tasks and another portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 50-53]; receive a first request from a second computing system [requests from one or more electronic devices 104, at numeral 1, the instance 112 may perform various customer workloads (e.g., reads and writes) on the storage volume 16A, at numeral 2. These customer workloads may be referred to herein as foreground activities, col. 3, lines 4-9; Fig. 1]; generate a first response to the first request based at least partly on execution of the first process, wherein the code execution system provides on-demand execution of the first process by allocating a second quantity of computing resources of the host computing device, wherein the second quantity of computing resources is greater than the first quantity of computing resources [a portion of the server's bandwidth may be reserved for foreground tasks and another portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 50-53; performance of tasks “in response to requests”, col. 3, lines 4-9; a shared tokens bucket 218 which allows background tasks to use foreground bandwidth when there is not much foreground workload, col. 8, lines 27-32; the shared token bucket associated with foreground bandwidth, col. 11, lines 26-27; large portion of a resource used foreground tasks whereas the remaining (i.e. small portion) for sharing among background tasks, col. 1 lines 6-19]; based at least partly on generation of the first response to the first request, reduce allocation of computing resources to the first quantity of computing resources, where the second process executes using the first quantity of computing resources [a portion of the server's bandwidth may be reserved for foreground tasks and another portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 50-53; Token buckets 214 can include a global token bucket 216 which includes tokens shared by all background tasks, and a shared tokens bucket 218 which allows background tasks to use foreground bandwidth when there is not much foreground workload, col. 8, lines 27-32; resources being dynamically provisioned and reconfigured to adjust to variable load, col. 4, lines 38-43 (Note: foreground bandwidth are used or borrow on a as needed basis such that when foreground bandwidth are not needed the background bandwidth in the perspective of the background tasks are reduced to the reserved portion)]; and provide the first response to the second computing system [client makes a request in a predefined format, the client should receive a response in a specific format or initiate a defined action, col. 4, lines 19-23; performance of tasks “in response to requests”, col. 3, lines 4-9]. Tang does not specifically teach first quantity of computing resources is a non-zero level specified in configuration data associated with the application code. However, Tang disclosed remaining pool of the server's bandwidth can be shared amongst the volumes for execution of background tasks [col. 1, lines 62-66] as well as a portion of the server’s bandwidth may be reserved for background tasks [col. 3, lines 52-53]. In addition, Sheshadri teaches explicitly establishing a baseline level of availability of resources in implemented rule(s) [paragraphs 21 and 53]. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Sheshadri and Tang because they are both in the same field of endeavor in addressing the dynamic on-demand need and provisioning of computing resources [Tang, col. 4, lines 35-43; Sheshadri, abstract; paragraphs 11 and 55]. As to claim 6, Tang does not specifically teach computing resources being vCPUs. However, Sheshadri teaches wherein the first quantity of computing resources of the host computing device comprises a first quantity of vCPUs and the second quantity of computing resources of the host computing device comprises a second quantity of vCPUs, wherein each vCPU is representative of processing capacity allocated to a virtual execution environment of host computing device [Sheshadri, resource or resource pool being virtual machines, paragraph 46]. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Sheshadri and Tang because they are both in the same field of endeavor in addressing the dynamic on-demand need and provisioning of computing resources [Tang, col. 4, lines 35-43; Sheshadri, abstract; paragraphs 11 and 55]. As to claim 7, this claim is rejected for the same reason as claim 5 above. As to claim 8, Tang as modified teaches the invention substantially as claimed including wherein the first quantity of computing resources of the host computing device is sufficient to allow at least one background process to execute [Tang, portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 52-53]. As to claim 9, Tang as modified teaches the invention substantially as claimed including wherein the system configures the code execution system based at least partly on the configuration data, wherein the configuration data is provided by a customer with which the application code is associated [Tang, on-demand network access to a shared pool of configurable computing resources that can be programmatically provisioned and released in response to customer commands, col. 4 lines 38-42. A provider network 600 may provide resource virtualization to customers via one or more virtualization services 610 that allow customers to purchase, rent, or otherwise obtain instances 612 of virtualized resources, including but not limited to computation and storage resources, col. 11, lines 58-62; Sheshadri, service provider implemented rules, paragraph 21]. As to claim 10, Tang as modified teaches the invention substantially as claimed including wherein the configuration data comprises a baseline set of computing resources indicating the first quantity of computing resources [Tang, remaining pool of the server's bandwidth can be shared amongst the volumes for execution of background tasks, col. 1, lines 62-66; portion of the server’s bandwidth may be reserved for background tasks, col. 3, lines 52-53; Sheshadri, establishing a baseline level of availability of resources in implemented rule(s), paragraphs 21 and 53]. As to claim 11, this claim is rejected for the same reason as claim 5 above. As to claim 12, Tang and Sheshadri do not specifically teach wherein the configuration data comprises an intermediate set of computing resources indicating a third quantity of computing resources, wherein the third quantity of computing resources is greater than the first quantity of computing resources and less than the second quantity of computing resources. However, Tang disclosed as a portion of the server’s bandwidth reserved for foreground task as well as for background tasks [col. 3, lines 50-53]. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modify Tang and Sheshadri to include additional set(s) of computing resources of different capacities for addressing different tasks as a matter of design choice. As to claim 13, this claim is rejected for the same reason as claim 5 above. Furthermore, Tang as modified teaches configuring a virtual execution environment of a host computing device to execute an application [Tang, hardware virtualization service and/or block storage service and/or storage volume implemented as virtualized device, col. 2, line 56- col. 6, line 16], wherein the application comprises a synchronous component and an asynchronous component [Tang, service(s) comprising foreground tasks such as client requested I/O or handling of and background tasks or handling of, col. 1, lines 50-66; background tasks/scheduler making asynchronous call, Fig. 4 and corresponding text; col. 9, lines 22-25]. As to claim 14, this claim is rejected for the same reason as claim 9 above. As to claim 15, Tang as modified teaches the invention substantially as claimed including determining, based at least partly on the application configuration data, a container image of a plurality of container images to be used to instantiate the virtual execution environment; obtaining the container image from a container image data store; and instantiating the virtual execution environment using the container image [Tang, hardware virtualization service and/or block storage service and/or storage volume implemented as virtualized device, col. 2, line 56- col. 6, line 16; col. 1 line 59, col. 3 lines 44-45; executing VMs and containers, col. 3 line 60- col. 4 line 6]. As to claim 16, this claim is rejected for the same reason as claim 6 above. As to claim 17, Tang as modified teaches the invention substantially as claimed including further comprising configuring a second virtual execution environment of the host computing device to execute a second application different from the application, wherein the second application comprises a second synchronous component and a second asynchronous component, wherein the second asynchronous component is to be executed using at least a third quantity of the computing resource, wherein the third quantity is a non-zero quantity that is different from the second quantity [mapping of claim 5 applied to block storage server 114b or subsequent iteration]. As to claim 18, this claim is rejected for the same reason as claims 5 and 13 above. Furthermore, Tang as modified teaches sending the request to the application; and receiving the response from the application, wherein the determining that the synchronous component has generated the response is based on receiving the response from the application [Tang, client makes a request in a predefined format to the provider network (i.e. services of the provider network), the client should receive a response in a specific format or initiate a defined action, col. 4 lines 19-23; A cloud can provide convenient, on-demand network access to a shared pool of configurable computing resources that can be programmatically provisioned and released in response to customer commands, col. 4 lines 38-42; response traffic from the virtualized computing resource instance 612 may be routed via the network substrate back onto the intermediate network 640 to the source entity 620, col. 12 lines 31-34]. As to claim 19, Tang as modified teaches the invention substantially as claimed including further comprising: receiving a second request from a third computing system; determining that the virtual execution environment is provisioned with the first quantity of the computing resource; and sending the second request to the application without provisioning the virtual execution environment with an additional quantity of the computing resource [Tang, portion of the server's bandwidth may be reserved for foreground tasks, col. 3 lines 50-53; performance of tasks “in response to requests”, col. 3 lines 4-9]. As to claim 20, Tang as modified teaches the invention substantially as claimed including further comprising determining that a request queue associated with the application is empty, wherein the determining that the asynchronous component has no outstanding request awaiting response is based on determining that the request queue associated with the application is empty [Tang, empty queue indicating no outstanding background tasks or requests and reallocation of the resource to other queue for consumption of unused bandwidth, col. 8, lines 4-13]. Furthermore, Tang disclosed the use of foreground bandwidth (i.e. increasing allocation of bandwidth to background tasks) by background tasks when there is not much foreground workload allowing background fetch manager to dequeue requests for processing [col. 8, lines 27-58]. Tang and Sheshadri do not specifically teach an empty request queue being applied to and associated with the synchronous component. However, queued tasks being an indication of the presence workload is well known in the art. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to have incorporate task queuing in the synchronous component as a matter of design choice and applying the indication of workload by means of presence or absence of queued tasks to effectively manage resource allocation/reallocation dynamically among different type of tasks. As to claim 1, this claim is rejected for the same reason as claim 5 above with respect to an application configuration data. Furthermore, Tang teaches the invention substantially as claimed including a system comprising: an on-demand code execution service [col. 5, lines 39-46] comprising a set of host computing devices for on-demand execution of application code [Fig. 1 and corresponding text, provider network having computing device and instances within a hardware virtualization service, block storage service, etc.], wherein the on-demand code execution service is configured to at least: configuring a system for an application that comprises a request-response process and a background process, the system configured a baseline set of computing resources for the background process, and a larger set of computing resources for the request-response process [service(s) comprising foreground tasks such as client requested I/O or handling of and background tasks or handling of, col. 1, lines 50-66; background tasks/scheduler making asynchronous call, Fig. 4 and corresponding text; col. 9, lines 22-25; block storage server/service, where customer data volumes stored on the block store server may each have a dedicated amount of bandwidth for execution of foreground task(s), col. 1, lines 62-66]; initialize execution of a virtual computing component on a host computing device, wherein the application executes within the virtual computing component, wherein the virtual computing component is provisioned with the baseline set of computing resources, and wherein the background process begins executing using the baseline set of computing resources [service(s) comprising foreground tasks such as client requested I/O or handling of and background tasks or handling of, col. 1, lines 50-66; background tasks/scheduler making asynchronous call, Fig. 4 and corresponding text; col. 9, lines 22-25; block storage server/service, where customer data volumes stored on the block store server may each have a dedicated amount of bandwidth for execution of foreground task(s), col. 1, lines 62-66]; determine that a request queue associated with the application includes a first request; retrieve the first request from the request queue, wherein the first request is to be processed by the application [queuing of tasks such that empty queue indicating no outstanding background tasks or requests and reallocation of the resource to other queue for consumption of unused bandwidth, col. 8, lines 4-13]; increase computing resources provisioned to the virtual computing component to the larger set of computing resources [allocate, hence increase amount of resources by use of a background scheduler to prioritize the use of the shared background bandwidth among the various background tasks performed by a block storage server, col. 1, lines 66-67 and col. 2, lines 1-2; The background scheduler can ensure that background tasks do not exceed their assigned bandwidth when multiple background tasks are competing for bandwidth but may also enable a background task to use additional available bandwidth when no other background tasks are competing for resources, col. 2 lines 16-21; a portion of the server's bandwidth may be reserved for foreground tasks and another portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 50-53]; send the first request to the virtual computing component, wherein the request-response process generates a response to the first request; receive the response from the virtual computing component; provide the response to the client device [client makes a request in a predefined format to the provider network (i.e. services of the provider network), the client should receive a response in a specific format or initiate a defined action, col. 4 lines 19-23; performance of tasks “in response to requests”, col. 3, lines 4-9; A cloud can provide convenient, on-demand network access to a shared pool of configurable computing resources that can be programmatically provisioned and released in response to customer commands, col. 4 lines 38-42; response traffic from the virtualized computing resource instance 612 may be routed via the network substrate back onto the intermediate network 640 to the source entity 620, col. 12 lines 31-34]; determine that the request queue contains no additional requests to be processed by the application [empty queue indicating no outstanding background tasks or requests and reallocation of the resource to other queue for consumption of unused bandwidth, col. 8, lines 4-13]; and decrease the computing resources provisioned to the virtual computing component to the baseline set of computing resources [a portion of the server's bandwidth may be reserved for foreground tasks and another portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 50-53; Token buckets 214 can include a global token bucket 216 which includes tokens shared by all background tasks, and a shared tokens bucket 218 which allows background tasks to use foreground bandwidth when there is not much foreground workload, col. 8, lines 27-32; resources being dynamically provisioned and reconfigured to adjust to variable load, col. 4, lines 38-43 (Note: foreground bandwidth are used or borrow on a as needed basis such that when foreground bandwidth are not needed the background bandwidth in the perspective of the background tasks are reduced to the reserved portion)]. As to claim 2, Tang as modified teaches the invention substantially as claimed including wherein the on-demand code execution service is further configured to: determine that the request queue includes a second request; retrieve the second request from the request queue, wherein the second request is to be processed by the application [Tang, queuing of tasks such that empty queue indicating no outstanding background tasks or requests and reallocation of the resource to other queue for consumption of unused bandwidth, col. 8, lines 4-13]; increase computing resources provisioned to the virtual computing component to the larger set of computing resources [Tang, allocate, hence increase amount of resources by use of a background scheduler to prioritize the use of the shared background bandwidth among the various background tasks performed by a block storage server, col. 1, lines 66-67 and col. 2, lines 1-2; The background scheduler can ensure that background tasks do not exceed their assigned bandwidth when multiple background tasks are competing for bandwidth but may also enable a background task to use additional available bandwidth when no other background tasks are competing for resources, col. 2 lines 16-21; a portion of the server's bandwidth may be reserved for foreground tasks and another portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 50-53]; receive the response from the virtual computing component; provide the response to the client device [Tang,client makes a request in a predefined format to the provider network (i.e. services of the provider network), the client should receive a response in a specific format or initiate a defined action, col. 4 lines 19-23; performance of tasks “in response to requests”, col. 3, lines 4-9; A cloud can provide convenient, on-demand network access to a shared pool of configurable computing resources that can be programmatically provisioned and released in response to customer commands, col. 4 lines 38-42; response traffic from the virtualized computing resource instance 612 may be routed via the network substrate back onto the intermediate network 640 to the source entity 620, col. 12 lines 31-34]; determine that the request queue contains no additional requests from the client device to be processed by the application [Tang, empty queue indicating no outstanding background tasks or requests and reallocation of the resource to other queue for consumption of unused bandwidth, col. 8, lines 4-13]; generate a response to the second request [Tang, empty queue indicating no outstanding background tasks or requests and reallocation of the resource to other queue for consumption of unused bandwidth, col. 8, lines 4-13]; and decrease the computing resources provisioned to the virtual computing component to the baseline set of computing resources [Tang, a portion of the server's bandwidth may be reserved for foreground tasks and another portion of the server's bandwidth may be reserved for background tasks, col. 3, lines 50-53; Token buckets 214 can include a global token bucket 216 which includes tokens shared by all background tasks, and a shared tokens bucket 218 which allows background tasks to use foreground bandwidth when there is not much foreground workload, col. 8, lines 27-32; resources being dynamically provisioned and reconfigured to adjust to variable load, col. 4, lines 38-43 (Note: foreground bandwidth are used or borrow on a as needed basis such that when foreground bandwidth are not needed the background bandwidth in the perspective of the background tasks are reduced to the reserved portion)]. As to claim 3, this claim is rejected for the same reason as claim 2 above. Furthermore, Tang teaches fail to receive the response from the virtual computing component for a set time period [task deadline and maximum duration to complete a task, col. 9, line 45-col. 10, line 17 ]. As to claim 4, Tang does not specifically teach computing resources being vCPUs. However, Sheshadri teaches wherein the first quantity of computing resources of the host computing device comprises a first quantity of vCPUs and the second quantity of computing resources of the host computing device comprises a second quantity of vCPUs, wherein each vCPU is representative of processing capacity allocated to a virtual execution environment of host computing device [Sheshadri, resource or resource pool being virtual machines, paragraph 46]. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Sheshadri and Tang because they are both in the same field of endeavor in addressing the dynamic on-demand need and provisioning of computing resources [Tang, col. 4, lines 35-43; Sheshadri, abstract; paragraphs 11 and 55].. The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. US Patent 9,389,921 teaches dynamically increases/decreases allocated hardware resource pools to the device drivers based on comparing the average number of I/Os waiting in a queue to a threshold value [Fig. 2 and corresponding text]. US Patent 10,452,441 to determining a baseline allocation of resources for a job and dynamically increase/decrease the amount of computing resources during completion of the job [col. 9, lines 17-41]. This Office action has an attached requirement for information under 37 CFR 1.105. A complete reply to this Office action must include a complete reply to the attached requirement for information. The time period for reply to the attached requirement coincides with the time period for reply to this Office action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to QING YUAN WU whose telephone number is (571)272-3776. The examiner can normally be reached M-F 9AM-6PM EST. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Lewis Bullock can be reached on 571-272-3759. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /QING YUAN WU/Primary Examiner, Art Unit 2199 /LEWIS A BULLOCK JR/Supervisory Patent Examiner, Art Unit 2199 /CORDELIA P ZECHER/Director, TC 2100
Read full office action

Prosecution Timeline

Sep 29, 2023
Application Filed
Apr 13, 2026
Non-Final Rejection mailed — §103, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12639117
Method, System and Apparatus for Configuring Computing Resource of Service
3y 2m to grant Granted May 26, 2026
Patent 12619468
HARDWARE INTEGRATED, PRIORITY-ENCODED DOMAINS
3y 4m to grant Granted May 05, 2026
Patent 12596560
HETEROMORPHIC I/O DISCOVERY AND HANDSHAKE
3y 11m to grant Granted Apr 07, 2026
Patent 12596579
METHOD AND SYSTEM FOR ACCELERATING APPLICATION PERFORMANCE IN SOLID STATE DRIVE
3y 8m to grant Granted Apr 07, 2026
Patent 12585256
Software Defined Automation System and Architecture
3y 2m to grant Granted Mar 24, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
91%
Grant Probability
99%
With Interview (+11.0%)
2y 10m (~2m remaining)
Median Time to Grant
Low
PTA Risk
Based on 761 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month