Abstract:
The application testing system and method provide an efficient and effective way to test multiple application variants of an application on at least one mobile device. The application testing system may cause a first application variant selection indication to be transmitted to at least one mobile device having the application. The first application variant selection indication may be configured to cause the mobile device to interact with the application according to a first application variant of the plurality of application variants. The application testing system may analyze data corresponding to the usage of the first application variant by the at least one mobile device, and cause a second application variant selection indication to be transmitted to the mobile device, wherein the second application variant selection indication is configured to cause the mobile device to interact with the application according to a second application variant of the plurality of application variants.
Abstract:
Aspects of a data environment, such as various capacities of data stores and instances, can be managed using a separate control environment. A monitoring component of the control environment can periodically communicate with the data environment to obtain performance information. The information is analyzed, using algorithms such as trending and extrapolation algorithms, to determine any recommended scaling of resources in the data environment. The scaling can be performed automatically, or as authorized by a customer. A workflow can be instantiated that includes tasks necessary to perform the scaling. The scaling of storage capacity can be performed without affecting the availability of the data store.
Abstract:
A method begins by a processing module detecting a new storage unit within a dispersed storage network DSN. The method continues with the processing module determining to affiliate the new storage unit with a virtual memory vault, where the virtual memory vault is mapped to a set of storage units of the DSN, where data objects are dispersed storage error encoded into pluralities of sets of encoded data slices that are stored in the set of storage units. The method continues with the processing module determining virtual DSN addresses of the virtual memory vault to allocate the new storage unit. The method continues with the processing module updating vault information regarding the virtual memory vault to include the allocation of the virtual DSN addresses to the new storage unit.
Abstract:
Methods for dynamically instrumenting a program while the program is executing are described. In some embodiments, profiling hooks may be selectively inserted into and removed from a program while the program is running. The hooks may gather profiling information, such as the frequency and duration of function calls, for a selected set of functions. The hooks may be inserted into the program without requiring a special build or modifications to the binary by modifying machine-level instructions for the program stored in system memory. The ability to selectively insert instrumentation into the machine-level instructions stored in the system memory allows a set of functions to be selected during execution of the program and hooks for each function of the set of functions to be dynamically inserted or removed during execution of the program to precisely capture profiling information for the set of functions.
Abstract:
The present technology is directed to accurately identifying code execution rhythms from a running program, even when they are occasionally irregular. The present technology is capable of detecting and inferring the rhythms without any prior knowledge or expectations of rates or number of rhythms present in a running program. These code execution rhythms can then be used to further understand and analyze the behavior of a running program, for example, by exposing various rhythms that might have been unknown/unrealized, irregularity of rhythms, or by analyzing the behavior of functions on a per frame basis under different rhythms.
Abstract:
A computer determines that a utilization level of a resource has satisfied a threshold. The computer scales the allocation of the resource to the furthest of the current allocation of the resource plus a parameter and of a historical limit. The computer determines if the scaled allocation of the resource is outside the historical limit and if so, sets the historical limit equal to the scaled allocation of the resource. The computer determines whether the scaling of the allocation of the resource will result in an allocation oscillation. The computer determines if the scaled allocation of the resource is outside a boundary parameter and if so, sets the allocation of the resource equal to the boundary parameter.
Abstract:
A computer system for determining whether or not a tool for deploying a software patch should be invoked is provided. The system may include a receiver that receives information regarding patch deployment over a first pre-determined amount of time. The system may include a processor configured to determine, based on the historical information, a patch deployment index. The patch deployment index may characterize patch deployment as a number of patches deployed per unit time. The receiver may receive historical information regarding patch deployment over a second amount of time. The processor may use the historical information regarding patch deployment of the second pre-determined amount of time to determine a second patch deployment index. The processor may compare the first deployment to the second patch deployment index. When the difference between the second index and the first index is greater than a pre-determined threshold, the processor may invoke the tool.
Abstract:
A computer-based method for throttling payment card transaction processing is provided. The method uses a computer device including a processor and a memory. The method includes identifying, in the memory, a first threshold level. The method also includes transmitting a first plurality of transaction requests to a sub-processing system. The method further includes computing, by the processor, an average response time of the sub-processing system for processing the first plurality of transaction requests. The method also includes receiving a second plurality of transaction requests. The method further includes identifying one or more of the second plurality of transaction requests as failure candidates based at least in part on the average response time and the first threshold level. The method also includes failing one or more of the failure candidates.
Abstract:
A ranking service can retrieve metrics from a metrics data store and use the metrics to determine a priority order in which to power down resources in a data center. Metrics from the data store can include a number of instances running on a host, a length of time that an instance has been operational, a type of instance, an amount of CPU use on a host, etc. The ranking service can also obtain other parameters from other sources. The parameters can include whether redundant or failover instances exist, the importance of the instances, whether the customer itself is considered important, other generic parameters from the customer account, a customer provided ranking of instances, etc.
Abstract:
A method of fault detection includes, while in normal operation: recording data corresponding to measurements of electrical current drawn during performance of a respective operation on a specified portion of a storage device; analyzing the recorded data, including determining whether one or more predefined characteristics of the recorded data meets predetermined failure criteria; and in accordance with a determination that the recorded data meets the predetermined failure criteria, performing one or more remedial actions, the one or more remedial actions including marking the specified portion as a known-bad portion. The method, optionally, includes, determining whether one or more predefined characteristics of the recorded data meets predetermined warning criteria and does not meet the predetermined failure criteria; and in accordance with a determination that the recorded data meets the predetermined warning criteria and does not meet predetermined failure criteria, performing one or more predictive actions.