Class TailChoppingGroup
This class represents a Group router that sends messages to a Routee determined using tail-chopping. This process has the router select a random routee, then waits an interval before sending to a different randomly chosen routee. The first response is used and the remaining are discarded. If the none of the routees respond within a specified time limit, a timeout failure occurs.
Inherited Members
Namespace: Akka.Routing
Assembly: Akka.dll
Syntax
public sealed class TailChoppingGroup : Group, ISurrogated, IEquatable<RouterConfig>, IEquatable<Group>
Constructors
| Improve this Doc View SourceTailChoppingGroup(Config)
Initializes a new instance of the TailChoppingGroup class.
Declaration
public TailChoppingGroup(Config config)
Parameters
Type | Name | Description |
---|---|---|
Config | config | The configuration to use to lookup paths used by the group router. noteIf 'routees.path' is defined in the provided configuration then those paths will be used by the router. If 'within' is defined in the provided configuration then that will be used as the timeout. If 'tail-chopping-router.interval' is defined in the provided configuration then that will be used as the interval. |
TailChoppingGroup(IEnumerable<String>, TimeSpan, TimeSpan)
Initializes a new instance of the TailChoppingGroup class.
Declaration
public TailChoppingGroup(IEnumerable<string> routeePaths, TimeSpan within, TimeSpan interval)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<String> | routeePaths | The actor paths used by this router during routee selection. |
TimeSpan | within | The amount of time to wait for a response. |
TimeSpan | interval | The interval to wait before sending to the next routee. |
TailChoppingGroup(IEnumerable<String>, TimeSpan, TimeSpan, String)
Initializes a new instance of the TailChoppingGroup class.
Declaration
public TailChoppingGroup(IEnumerable<string> routeePaths, TimeSpan within, TimeSpan interval, string routerDispatcher)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<String> | routeePaths | The actor paths used by this router during routee selection. |
TimeSpan | within | The amount of time to wait for a response. |
TimeSpan | interval | The interval to wait before sending to the next routee. |
String | routerDispatcher | The dispatcher to use when passing messages to the routees. |
Properties
| Improve this Doc View SourceInterval
The amount of time to wait before sending to the next routee.
Declaration
public TimeSpan Interval { get; }
Property Value
Type | Description |
---|---|
TimeSpan |
Within
The amount of time to wait for a response.
Declaration
public TimeSpan Within { get; }
Property Value
Type | Description |
---|---|
TimeSpan |
Methods
| Improve this Doc View SourceCreateRouter(ActorSystem)
Creates a router that is responsible for routing messages to routees within the provided system
.
Declaration
public override Router CreateRouter(ActorSystem system)
Parameters
Type | Name | Description |
---|---|---|
ActorSystem | system | The actor system that owns this router. |
Returns
Type | Description |
---|---|
Router | The newly created router tied to the given system. |
Overrides
| Improve this Doc View SourceGetPaths(ActorSystem)
Retrieves the actor paths used by this router during routee selection.
Declaration
public override IEnumerable<string> GetPaths(ActorSystem system)
Parameters
Type | Name | Description |
---|---|---|
ActorSystem | system | The actor system that owns this router. |
Returns
Type | Description |
---|---|
IEnumerable<String> | An enumeration of actor paths used during routee selection |
Overrides
| Improve this Doc View SourceToSurrogate(ActorSystem)
Creates a surrogate representation of the current TailChoppingGroup.
Declaration
public override ISurrogate ToSurrogate(ActorSystem system)
Parameters
Type | Name | Description |
---|---|---|
ActorSystem | system | The actor system that owns this router. |
Returns
Type | Description |
---|---|
ISurrogate | The surrogate representation of the current TailChoppingGroup. |
Overrides
| Improve this Doc View SourceWithDispatcher(String)
Creates a new TailChoppingGroup router with a given dispatcher id.
note
This method is immutable and returns a new instance of the router.
Declaration
public TailChoppingGroup WithDispatcher(string dispatcher)
Parameters
Type | Name | Description |
---|---|---|
String | dispatcher | The dispatcher id used to configure the new router. |
Returns
Type | Description |
---|---|
TailChoppingGroup | A new router with the provided dispatcher id. |