Optimization of production systems
First Claim
1. A computer-implemented method for use with a production system having first computing resources and second computing resources, the method comprising:
- intercepting, asynchronously and without blocking, at least some production requests directed to the production system while the first computing resources are in an on-line mode of operation to generate intercepted production requests, a production request being a request for production system data from the production system;
logging the intercepted production requests as logged shadow requests;
selecting at least some of the logged shadow requests as selected shadow requests;
requesting the second computing resources to process, while in an off-line mode of operation and without modifying the production system data, the selected shadow requests; and
requesting the second computing resources to process additional shadow requests for replay as replayed shadow requests until one or more conditions regarding the replayed shadow requests is satisfied, wherein the replayed shadow requests include a mix of use cases to control a warm-up duration for the second computing resources;
wherein the selected shadow requests prepare a cache of the second computing resources to reduce start-up delay of the second computing resources for a subsequent on-line mode of operation.
1 Assignment
0 Petitions
Accused Products
Abstract
The techniques described herein provide software testing of a candidate version of software. In some examples, an interceptor may perform an asynchronous and non-blocking intercept of at least one request to a production system and may provide the intercepted at least one request to a shadow proxy service as at least one shadow request. The shadow proxy service may process the shadow request by causing the at least one shadow request to be classified based at least one criteria. The processed shadow requests are logged. A selection may be made from among the logged shadow request to be replayed by the production system based on one or more criteria used to classify the shadow requests. The shadow proxy service may replay the selected at least one logged shadow request to the production system.
76 Citations
28 Claims
-
1. A computer-implemented method for use with a production system having first computing resources and second computing resources, the method comprising:
-
intercepting, asynchronously and without blocking, at least some production requests directed to the production system while the first computing resources are in an on-line mode of operation to generate intercepted production requests, a production request being a request for production system data from the production system; logging the intercepted production requests as logged shadow requests; selecting at least some of the logged shadow requests as selected shadow requests; requesting the second computing resources to process, while in an off-line mode of operation and without modifying the production system data, the selected shadow requests; and requesting the second computing resources to process additional shadow requests for replay as replayed shadow requests until one or more conditions regarding the replayed shadow requests is satisfied, wherein the replayed shadow requests include a mix of use cases to control a warm-up duration for the second computing resources; wherein the selected shadow requests prepare a cache of the second computing resources to reduce start-up delay of the second computing resources for a subsequent on-line mode of operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented method comprising:
-
intercepting, asynchronously and without blocking, at least some production requests directed to a production system to generate intercepted production requests, the production system comprising a plurality of production machines, while a first production machine of the production system is in an on-line mode of operation, a production request being a request for production system data from the production system; logging the intercepted production requests as logged shadow requests; selecting at least some of the logged shadow requests as selected shadow requests; requesting a second production machine of the production system to process the selected shadow requests while in an off-line mode of operation and without modifying the production system data; and requesting the second production machine to process additional shadow requests until one or more conditions regarding the additional shadow requests is satisfied, wherein the additional shadow requests include a mix of use cases to control a warm-up duration for the second production machine; and wherein the selected shadow requests prepare a cache of the second production machine to reduce start-up delay of the second production machine for a subsequent on-line mode of operation. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A shadow proxy system for use with a production system having first computing resources and second computing resources, comprising:
-
an interceptor, comprising a hardware processor and computer-readable media which contains operating instructions for the hardware processor, that; performs an asynchronous and non-blocking intercept of at least some production requests to the production system while the first computing resources are in an on-line mode of operation to generate intercepted production requests, a production request being a request for data from the production system; provides the intercepted production requests to the first computing resources while the first computing resources are in the on-line mode of operation; and provides the intercepted production requests to a shadow proxy service as shadow requests; and the shadow proxy service, comprising a hardware processor and computer-readable media which contains operating instructions for the processor, the hardware processor and computer-readable media of the shadow proxy service not being the hardware processor and computer-readable media of the interceptor, that; logs the shadow requests as logged shadow requests; selects at least some of the logged shadow requests as selected shadow requests; and sends the selected shadow requests to the second computing resources for replay as replayed shadow requests by the second computing resources while the second computing resources are in an off-line mode of operation; wherein the shadow proxy service selects and sends additional logged shadow requests to the second computing resources for replay as replayed shadow requests until one or more conditions regarding the replayed shadow requests is satisfied, and the replayed shadow requests include a mix of use cases to control a warm-up duration for the second computing resources; and wherein the selected shadow requests sent to the second computing resources prepare a cache of the second computing resources to reduce start-up delay of the second computing resources for a subsequent on-line mode of operation. - View Dependent Claims (20, 21)
-
-
22. A shadow proxy system for use with a production system comprising a plurality of production machines, the shadow proxy system comprising:
-
a hardware processor and computer-readable media which contains operating instructions for the hardware processor that causes the shadow proxy system to; perform an asynchronous and non-blocking intercept of at least some production requests to the production system while a first production machine of the plurality of production machines is in an on-line mode of operation to generate intercepted production requests, a production request being a request for data from the production system; log the intercepted production requests as logged shadow requests; select at least some of the logged shadow requests as selected shadow requests; send the selected shadow requests to the production system for replay as replayed shadow requests by a second production machine of the plurality of production machines while the second production machine is in an off-line mode of operation; and request the production system to process additional shadow requests for replay as additional replayed shadow requests by the second production machine until one or more conditions regarding the additional replayed shadow requests is satisfied, wherein the additional replayed shadow requests include a mix of use cases to control a warm-up duration for the second production machine; wherein the selected shadow requests prepare a cache of the second production machine to reduce start-up delay of the second production machine for a subsequent on-line mode of operation. - View Dependent Claims (23, 24, 25, 26, 27, 28)
-
Specification