Overview

Namespaces

  • OpenCloud
    • Autoscale
      • Resource
    • CloudMonitoring
      • Exception
      • Resource
    • Common
      • Collection
      • Constants
      • Exceptions
      • Http
        • Message
      • Log
      • Resource
      • Service
    • Compute
      • Constants
      • Exception
      • Resource
    • Database
      • Resource
    • DNS
      • Collection
      • Resource
    • Identity
      • Constants
      • Resource
    • Image
      • Enum
      • Resource
        • JsonPatch
        • Schema
    • LoadBalancer
      • Enum
      • Resource
    • ObjectStore
      • Constants
      • Exception
      • Resource
      • Upload
    • Orchestration
    • Queues
      • Exception
      • Resource
    • Volume
      • Resource
  • PHP

Classes

  • AbstractResource
  • Access
  • Algorithm
  • AllowedDomain
  • ConnectionLogging
  • ConnectionThrottle
  • ContentCaching
  • ErrorPage
  • HealthMonitor
  • LoadBalancer
  • Metadata
  • Node
  • NodeEvent
  • NonIdUriResource
  • Protocol
  • ReadOnlyResource
  • SessionPersistence
  • SSLTermination
  • Stats
  • UsageRecord
  • VirtualIp
  • Overview
  • Namespace
  • Class
  • Tree
  • Download

Class Algorithm

All load balancers utilize an algorithm that defines how traffic should be directed between back-end nodes. The default algorithm for newly created load balancers is RANDOM, which can be overridden at creation time or changed after the load balancer has been initially provisioned. The algorithm name is to be constant within a major revision of the load balancing API, though new algorithms may be created with a unique algorithm name within a given major revision of the service API.

Accepted options are:

  • LEAST_CONNECTIONS: The node with the lowest number of connections will receive requests.
  • RANDOM: Back-end servers are selected at random.
  • ROUND_ROBIN: Connections are routed to each of the back-end servers in turn.
  • WEIGHTED_LEAST_CONNECTIONS: Each request will be assigned to a node based on the number of concurrent connections to the node and its weight.
  • WEIGHTED_ROUND_ROBIN: A round robin algorithm, but with different proportions of traffic being directed to the back-end nodes. Weights must be defined as part of the load balancer's node configuration.
OpenCloud\Common\Base
Extended by OpenCloud\Common\Resource\BaseResource
Extended by OpenCloud\Common\Resource\PersistentResource
Extended by OpenCloud\LoadBalancer\Resource\AbstractResource
Extended by OpenCloud\LoadBalancer\Resource\ReadOnlyResource
Extended by OpenCloud\LoadBalancer\Resource\Algorithm
Namespace: OpenCloud\LoadBalancer\Resource
Located at OpenCloud/LoadBalancer/Resource/Algorithm.php
Methods inherited from OpenCloud\LoadBalancer\Resource\ReadOnlyResource
create(), delete(), update()
Methods inherited from OpenCloud\LoadBalancer\Resource\AbstractResource
createJson(), refresh(), refreshFromParent(), updateJson()
Methods inherited from OpenCloud\Common\Resource\PersistentResource
checkExtension(), getAlias(), noCreate(), noDelete(), noUpdate(), refreshFromLocationUrl(), waitFor()
Methods inherited from OpenCloud\Common\Resource\BaseResource
__construct(), findLink(), getClient(), getMetadata(), getParent(), getService(), getUrl(), jsonCollectionElement(), jsonCollectionName(), jsonName(), parseResponse(), primaryKeyField(), resourceName(), setMetadata(), setParent(), setService()
Methods inherited from OpenCloud\Common\Base
__call(), checkJsonError(), generateUuid(), getInstance(), getJsonHeader(), getLogger(), getProperty(), makeResourceIteratorOptions(), populate(), propertyExists(), setLogger(), setProperty(), stripNamespace(), toCamel(), toUnderscores()
Properties summary
public mixed $name
#
protected static string $json_name 'algorithm'
#
protected static string $url_resource 'loadbalancers/algorithms'
#
Properties inherited from OpenCloud\Common\Resource\BaseResource
$metadata, $parent, $service
Properties inherited from OpenCloud\Common\Base
$aliases
PHP OpenCloud API API documentation generated by ApiGen 2.8.0