Patent classifications
H04L67/1023
DYNAMIC PLACEMENT OF COMPUTING TASKS IN A DISTRIBUTED COMPUTING ENVIRONMENT
Among other things, this document describes systems, methods and devices for performance testing and dynamic placement of computing tasks in a distributed computing environment. In embodiments, a given client request is forwarded up a hierarchy of nodes, or across tiers in the hierarchy. A particular computing node in the system self-determines to perform a computing task to generate (or help generate) particular content for a response to the client. The computing node injects its identifier into the response indicating that it performed those tasks; the identifier is transmitted to the client with particular content. The client runs code that assesses the performance of the system from the client's perspective, e.g., in servicing the request, and beacons this performance data, along with the aforementioned identifier, to a system intelligence component. The performance information may be used to dynamically place and improve the placement of the computing task(s).
WEBSITE MONITORING METHOD AND DEVICE
The present application discloses a website monitoring method and device. A specific embodiment of the method comprises the following steps: receiving monitoring information of websites to be monitored from the allocation server, the monitoring information transmitted to the plurality of monitoring servers after the allocation server parses a website monitoring request for the websites to be monitored transmitted from the terminal, and the monitoring information comprising monitoring cycles and monitoring types; allocating, according to a preset allocation algorithm, different monitoring execution times for the websites to be monitored; determining priorities of the websites to be monitored based on lengths of the monitoring cycles; and selecting, based on the priorities, a worker thread from a pre-created thread pool to allow the selected worker thread to periodically monitor the websites to be monitored at the monitoring execution times. According to the embodiment, inherent resources of each monitoring server are sufficiently utilized and the failure rate and the error rate of website monitoring are reduced.
AUTONOMOUS DISTRIBUTED WORKLOAD AND INFRASTRUCTURE SCHEDULING
Provided is a process of autonomous distributed workload and infrastructure scheduling based on physical telemetry data of a plurality of different data centers executing a plurality of different workload distributed applications on behalf of a plurality of different tenants.
AUTONOMOUS DISTRIBUTED WORKLOAD AND INFRASTRUCTURE SCHEDULING
Provided is a process of autonomous distributed workload and infrastructure scheduling based on physical telemetry data of a plurality of different data centers executing a plurality of different workload distributed applications on behalf of a plurality of different tenants.
Content delivery network architecture with edge proxy
Aspects of the present disclosure involve systems, methods, computer program products, and the like, for a content delivery network (CDN) architecture utilizing one or more proxy cache devices between a requesting device and an edge cluster of the CDN. The proxy cache device is a relatively high speed device compared to various possible devices making up one or more edge clusters. Thus, if the proxy has cached the requested content, it is capable of directly servicing the client content request at a faster rate than providing the content from the edge cluster. Otherwise, the proxy cache may request the content from an edge cluster and store the content for quick retrieval in response to additional requests for the content. In one embodiment, the proxy cache may perform an analysis of the request or a series of requests to determine if the content is cached at the proxy cache device.
Selecting Low Priority Pods for Guaranteed Runs
Service assurance is provided. A low priority pod corresponding to a low priority service in an orchestration platform that is to be evicted due to a predicted peak load period of a high priority service is identified based on analysis of historical and resource information. The low priority service corresponding to the low priority pod that is to be evicted due to the predicted peak load period of the high priority service is marked as an assured service for a guaranteed run in response to receiving an input from a user who was notified regarding eviction of the low priority pod. The low priority pod corresponding to the low priority service that is to be evicted due to the predicted peak load period of the high priority service is provisioned on a second host node prior to the eviction of the low priority pod from a first host node.
Selecting Low Priority Pods for Guaranteed Runs
Service assurance is provided. A low priority pod corresponding to a low priority service in an orchestration platform that is to be evicted due to a predicted peak load period of a high priority service is identified based on analysis of historical and resource information. The low priority service corresponding to the low priority pod that is to be evicted due to the predicted peak load period of the high priority service is marked as an assured service for a guaranteed run in response to receiving an input from a user who was notified regarding eviction of the low priority pod. The low priority pod corresponding to the low priority service that is to be evicted due to the predicted peak load period of the high priority service is provisioned on a second host node prior to the eviction of the low priority pod from a first host node.
Maintaining client/server session affinity through load balancers
In one embodiment, a system uses a two-layer deterministic function, such as a hashing mechanism, to ensure session stickiness or affinity. A client can generate a session key that can be used for at least two things. First, a load balancer can be selected by the client using the session key by using a consistent or deterministic hashing algorithm so that the same load balancer is selected from a set of weighted load balancers. After selecting the load balancer, the client can send the request to the selected load balancer. The load balancer then uses the same session key, which can be transmitted in an HTTP header, to select a backend host server computer. The result is that session affinity is maintained.
Tiered cache filling
One embodiment of the present invention sets forth a technique for replicating a file within a network of servers. The technique includes determining one or more regional master servers included in a regional cluster of servers and causing each regional master server to retrieve a file from a fill source. The technique further includes, for at least one local cluster of servers included in the regional cluster of servers, determining one or more local master servers included in the at least one local cluster of servers, and causing each local master server to retrieve the file from one of the one or more regional master servers.
Tiered cache filling
One embodiment of the present invention sets forth a technique for replicating a file within a network of servers. The technique includes determining one or more regional master servers included in a regional cluster of servers and causing each regional master server to retrieve a file from a fill source. The technique further includes, for at least one local cluster of servers included in the regional cluster of servers, determining one or more local master servers included in the at least one local cluster of servers, and causing each local master server to retrieve the file from one of the one or more regional master servers.