H04L67/1017

Load balancing technique selection based on estimated load

Request routing in a network of computing devices. Back-end nodes associated with a request router send load reports to request routers. To select a back-end node for processing a request, a request router determines, based on the reports, estimated loads and corresponding errors of the estimated loads for respective nodes. A load balancing technique may be selected, based on the estimated loads and corresponding errors (e.g., round robin may be selected if the significance of an average error outweighs the difference between estimated load values for the nodes, or least estimated load may be selected of the difference between load values is greater than the average error). The selected technique is applied to choose one of the nodes to process the request. Load probability distribution may also be used for request routing, in combination with or separate from the selection based on the estimated loads.

LOAD BALANCING AGENT
20220303337 · 2022-09-22 · ·

A client-side load balancer replaces standard name serving functions. An operating system on client machine receives a command to start a client application. The command includes a command line argument (a switch) based on which the operating system also starts the client-side load balancer, which intercepts name service requests. The client-side load balancer controls a cache memory with a list of IP addresses of available servers that are associated with a URL for a particular service request. In response to successive name service requests for the URL, the client-side load balancer provides IP addresses from the list in a strictly repetitive order. The order may be a Round Robin order, or any permutation of a Round Robin order.

Cloud-based service policy reroute

According to examples, an apparatus may include a processor and a memory on which is stored machine readable instructions. The instructions may cause the processor to receive a call request for a cloud-based service and retrieve a first policy corresponding to the cloud-based service, the first policy identifying a policy reroute. The instructions may also cause the processor to determine which second policy of a plurality of second policies that corresponds to the policy reroute and retrieve the second policy that the corresponds to the policy reroute. The instructions may further cause the processor to apply the second policy on the cloud-based service and respond to the call request following the application of the second policy.

Method and system to seamlessly upgrade cloud-based call processing services

A method and system to preserve a group call state during a cloud-based call processing service upgrade is provided. Group call requests are queued through a message broker to instances of a call processing service. A cloud based database is selectively locked and unlocked by each instance of the call processing service as group call requests are processed with retrieved group call states A need to upgrade the call processing service is determined by an orchestration framework, which sends exit signals to current instances of the call processing service and starts new instances. In-progress group call requests are processed by their respective instances of the call processing service and acknowledgments are sent to a message broker upon completion. Unacknowledged group call requests are determined byte message broker and retransmitted to the new instances of the call processing service.

REMOTE DATA GATEWAY FOR USE WITH A DATA ANALYTICS WAREHOUSE
20220100751 · 2022-03-31 ·

In accordance with an embodiment, described herein are systems and methods for providing a remote data gateway for use with an analytics environment, such as, for example, an Oracle Analytics Cloud environment, or a data warehouse or other type of analytics or computing environment. In accordance with an embodiment, the remote data gateway enables secure access by a data analytics warehouse operating in a cloud environment, to a customer's on-premise data, without migrating their on-premise data to the cloud. An on-premise data client exposes a port, which a data analytics remote data gateway server connects to, authenticates itself, and thereafter calls into the client periodically, via a remote data gateway agent, to check for subsequent requests, for example to provide on-premise data to the cloud environment, or to run data analytics on the on-premise data.

REMOTE DATA GATEWAY WITH SUPPORT FOR PEER-TO-PEER ROUTING FOR USE WITH A DATA ANALYTICS WAREHOUSE
20220100773 · 2022-03-31 ·

In accordance with an embodiment, described herein are systems and methods for providing a remote data gateway that supports peer routing for use with an analytics environment. In accordance with an embodiment, a data analytics remote data gateway server connects to on-premise data clients, via remote data gateway agents. If a remote data gateway server cannot reach a particular data client at its remote data gateway agent, then it can determine which other clients it can get requests from. To address this, the system can use a process of inverse proxy peer-to-peer routing—if a client has a request to be processed, but the server has not yet called into that client, then the client can hand off the request to a peer remote data gateway server, and the server can retrieve/process that request from that server operating as a proxy.

SECURE COMMUNICATIONS OF STORAGE TENANTS THAT SHARE A STORAGE CLUSTER SYSTEM
20220103628 · 2022-03-31 ·

A first set of one or more tenant communication components are configured to communicate with a first separate system component of a first storage tenant via a first virtual network. A second set of one or more tenant communication components are configured to communicate with a second separate system component of a second storage tenant via a second virtual network. The second virtual network is separate from the first virtual network. A plurality of tenant communication components of the storage cluster system including the first set of one or more tenant communication components and the second set of one or more tenant communication components are configured to communicate internally in the storage cluster system via a third virtual network separate from the first virtual network and the second virtual network.

Multi-layer network for metric aggregation
11303582 · 2022-04-12 · ·

A multi-layered parallel aggregation can be performed on large-scale metric streams using layers of independent host server computers that perform partial aggregations on results of a previous layer and pass a result of the partial aggregation to a next layer of host server computers, until a single host server computer in a last layer can calculate a final output, which is a combination of the partial aggregations. Because every layer is aggregating input streams, the quantity of data exchange lowers as the layer number increases. The number of layers is chosen so as to ensure that data ingested by a last layer is sufficiently manageable that a single host server computer in the last layer can aggregate all of the partial aggregates into a final result.

FEEDBACK CONTROL BASED LOAD BALANCING FOR CONTAINERIZED WORKLOADS
20220086090 · 2022-03-17 ·

System and methods are described for performing load balancing by continually collecting real-time metrics values from a plurality of endpoints in a cloud computing system, the real-time metrics values representing current performance measurements of processing by the endpoints, and using the collected real-time metrics values by a controller to continually determine a current weight value for each endpoint, the current weight value representing a probability that the endpoint will be selected to process a user request. The method includes receiving the user request for the cloud computing system to perform requested processing; selecting an endpoint of the cloud computing system to process the user request based at least in part on the current weight values of the endpoints; and sending the user request to the selected endpoint.

Distributed processing of a digital image

Processing a digital image in a distributed computing environment comprising a communications network interconnecting two or more computing nodes. A segmentation of the digital image into two or more image segments is determined. For each of the image segments, a number of non-background pixels comprised by the image segment is determined. An assignment of each of the image segments to one of the computing nodes is determined. The determination of the assignment may include balancing, based on the number of non-background pixels determined for each of the image segments, the workload of the assigned computing nodes responsive to processing the image segments. Each of the assigned computing nodes may be caused to process the image segments assigned to the computing node.