Search Results for

    Show / Hide Table of Contents

    Class RoundRobinGroup

    This class represents a Group router that sends messages to a Routee determined using round-robin. This process has the router select from a list of routees in sequential order. When the list has been exhausted, the router iterates again from the beginning of the list.

    note

    For concurrent calls, round robin is just a best effort.

    note

    The configuration parameter trumps the constructor arguments. This means that if you provide `paths` during instantiation they will be ignored if the router is defined in the configuration file for the actor being used.

    Inheritance
    object
    RouterConfig
    Group
    RoundRobinGroup
    Implements
    ISurrogated
    IEquatable<RouterConfig>
    IEquatable<Group>
    Inherited Members
    Group.Props()
    Group.CreateRouterActor()
    Group.Equals(Group)
    Group.Equals(object)
    Group.GetHashCode()
    RouterConfig.RouterDispatcher
    RouterConfig.RoutingLogicController(RoutingLogic)
    RouterConfig.IsManagementMessage(object)
    RouterConfig.StopRouterWhenAllRouteesRemoved
    RouterConfig.WithFallback(RouterConfig)
    RouterConfig.VerifyConfig(ActorPath)
    RouterConfig.Equals(RouterConfig)
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Akka.Routing
    Assembly: Akka.dll
    Syntax
    public sealed class RoundRobinGroup : Group, ISurrogated, IEquatable<RouterConfig>, IEquatable<Group>

    Constructors

    | Edit this page View Source

    RoundRobinGroup(Config)

    Initializes a new instance of the RoundRobinGroup class.

    Declaration
    public RoundRobinGroup(Config config)
    Parameters
    Type Name Description
    Config config

    The configuration to use to lookup paths used by the group router.

    note

    If 'routees.path' is defined in the provided configuration then those paths will be used by the router.

    | Edit this page View Source

    RoundRobinGroup(IEnumerable<string>)

    Initializes a new instance of the RoundRobinGroup class.

    Declaration
    public RoundRobinGroup(IEnumerable<string> paths)
    Parameters
    Type Name Description
    IEnumerable<string> paths

    An enumeration of actor paths used by the group router.

    | Edit this page View Source

    RoundRobinGroup(IEnumerable<string>, string)

    Initializes a new instance of the RoundRobinGroup class.

    Declaration
    public RoundRobinGroup(IEnumerable<string> paths, string routerDispatcher)
    Parameters
    Type Name Description
    IEnumerable<string> paths

    A list of paths used by the group router.

    string routerDispatcher

    The dispatcher to use when passing messages to routees.

    | Edit this page View Source

    RoundRobinGroup(params string[])

    Initializes a new instance of the RoundRobinGroup class.

    Declaration
    public RoundRobinGroup(params string[] paths)
    Parameters
    Type Name Description
    string[] paths

    A list of paths used by the group router.

    Methods

    | Edit this page View Source

    CreateRouter(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
    RouterConfig.CreateRouter(ActorSystem)
    | Edit this page View Source

    GetPaths(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
    Group.GetPaths(ActorSystem)
    | Edit this page View Source

    ToSurrogate(ActorSystem)

    Creates a surrogate representation of the current RoundRobinGroup.

    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 RoundRobinGroup.

    Overrides
    RouterConfig.ToSurrogate(ActorSystem)
    | Edit this page View Source

    WithDispatcher(string)

    Creates a new RoundRobinGroup router with a given dispatcher id.

    note

    This method is immutable and returns a new instance of the router.

    Declaration
    public Group WithDispatcher(string dispatcherId)
    Parameters
    Type Name Description
    string dispatcherId

    The dispatcher id used to configure the new router.

    Returns
    Type Description
    Group

    A new router with the provided dispatcher id.

    Implements

    ISurrogated
    IEquatable<T>
    IEquatable<T>

    Extension Methods

    ObjectExtensions.IsDefaultForType<T>(T)
    ObjectExtensions.AsOption<T>(T)
    Extensions.AsInstanceOf<T>(object)
    In this article
    • githubEdit this page
    • View Source
    Back to top
    Contribute
    • Project Chat
    • Discussion Forum
    • Source Code
    Support
    • Akka.NET Support Plans
    • Akka.NET Observability Tools
    • Akka.NET Training & Consulting
    Maintained By
    • Petabridge - The Akka.NET Company
    • Learn Akka.NET