Click or drag to resize
Akka.NETDefaultResizer Class
Implementation of Resizer that adjust the Pool based on specified thresholds.
Inheritance Hierarchy

Namespace:  Akka.Routing
Assembly:  Akka (in Akka.dll) Version: 1.2.3.42 (1.2.3.42)
Syntax
public class DefaultResizer : Resizer, 
	IEquatable<DefaultResizer>

The DefaultResizer type exposes the following members.

Constructors
  NameDescription
Public methodDefaultResizer
Initializes a new instance of the DefaultResizer class.
Top
Properties
  NameDescription
Public propertyBackoffRate
Fraction of routees to be removed when the resizer reaches the backoffThreshold. For example, 0.1 would decrease 10% (rounded up), i.e. if current capacity is 9 it will request an decrease of 1 routee.
Public propertyBackoffThreshold
Minimum fraction of busy routees before backing off. For example, if this is 0.3, then we'll remove some routees only when less than 30% of routees are busy, i.e. if current capacity is 10 and 3 are busy then the capacity is unchanged, but if 2 or less are busy the capacity is decreased. Use 0.0 or negative to avoid removal of routees.
Public propertyLowerBound
The fewest number of routees the router should ever have.
Public propertyMessagesPerResize
Number of messages between resize operation. Use 1 to resize before each message.
Public propertyPressureThreshold
* Threshold to evaluate if routee is considered to be busy (under pressure). Implementation depends on this value (default is 1).
  • 0: number of routees currently processing a message.
  • 1: number of routees currently processing a message has some messages in mailbox.
  • > 1: number of routees with at least the configured `pressureThreshold` messages in their mailbox. Note that estimating mailbox size of default UnboundedMailbox is O(N) operation.
Public propertyRampupRate
Percentage to increase capacity whenever all routees are busy. For example, 0.2 would increase 20% (rounded up), i.e. if current capacity is 6 it will request an increase of 2 more routees.
Public propertyUpperBound
The most number of routees the router should ever have. Must be greater than or equal to `lowerBound`.
Top
Methods
  NameDescription
Public methodBackoff
Computes a proposed negative (or zero) capacity delta using the configured `backoffThreshold` and `backoffRate`
Public methodCapacity
Returns the overall desired change in resizer capacity. Positive value will add routees to the resizer. Negative value will remove routees from the resizer
Public methodEquals(Object)
Determines whether the specified object is equal to the current object.
(Overrides ObjectEquals(Object).)
Public methodEquals(DefaultResizer)
Indicates whether the current object is equal to another object of the same type.
Public methodFilter
This method can be used to smooth the capacity delta by considering the current pressure and current capacity.
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodStatic memberFromConfig
TBD
Public methodGetHashCode
Serves as the default hash function.
(Overrides ObjectGetHashCode.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIsTimeForResize
TBD
(Overrides ResizerIsTimeForResize(Int64).)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodPressure
Number of routees considered busy, or above 'pressure level'. Implementation depends on the value of `pressureThreshold` (default is 1).
  • 0: number of routees currently processing a message.
  • 1: number of routees currently processing a message has some messages in mailbox.
  • > 1: number of routees with at least the configured `pressureThreshold` messages in their mailbox. Note that estimating mailbox size of default UnboundedMailbox is O(N) operation.
Public methodRampup
Computes a proposed positive (or zero) capacity delta using the configured `rampupRate`.
Public methodResize
TBD
(Overrides ResizerResize(IEnumerableRoutee).)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Extension Methods
See Also