Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagec#
themeEmacs
title라운드로빈 시드노드
collapsetrue
public void ClusterUpSeedNode()
{
    var baseConfig = ConfigurationFactory.ParseString(@"akka {
    actor{
        provider = ""Akka.Cluster.ClusterActorRefProvider, Akka.Cluster""
        deployment {
            /myClusterPoolRouter {    
                routees.paths = [""/user/myClusterPoolRouter""]                                                                   
                router = round-robin-pool # routing strategy
                nr-of-instances = 10 # max number of total routees
                cluster {
                    enabled = on
                    allow-local-routees = on
                    use-role = crawler
                    max-nr-of-instances-per-node = 1
                }
            }
        }
    }
    remote {
        helios.tcp {
            port = 9999 #bound to a specific port
            hostname = 127.0.0.1
        }
    }
    cluster {
        seed-nodes = [""akka.tcp://ClusterSystem@127.0.0.1:9999""] # address of seed node
        roles = [""crawler""] # roles this member is in
        #role.[""crawler""].min-nr-of-members = 3 # crawler role minimum node count
    }

    }");

    actorSystem = ActorSystem.Create("ClusterSystem", baseConfig);
    //var clusterActor2 = actorSystem.ActorOf<EchoActor2>("myClusterPoolRouter");
    var router = actorSystem.ActorOf(Props.Create<ClusterActor>().WithRouter(FromConfig.Instance), "myClusterPoolRouter");            
    Task.Delay(2000).Wait();
    
    var msg = new Hello("hi");
    router.Tell(msg);
    router.Tell(msg);
    router.Tell(msg);
}

...

Code Block
languagec#
themeEmacs
title라운드로빈 일반노드
collapsetrue
public void ClusterUpNode()
{
    var baseConfig = ConfigurationFactory.ParseString(@"akka {
    actor{
        provider = ""Akka.Cluster.ClusterActorRefProvider, Akka.Cluster""
        deployment {
            /myClusterPoolRouter {    
                routees.paths = [""/user/myClusterPoolRouter""]                                                                   
                router = round-robin-pool # routing strategy
                nr-of-instances = 10 # max number of total routees
                cluster {
                    enabled = on
                    allow-local-routees = on
                    use-role = crawler
                    max-nr-of-instances-per-node = 1
                }
            }
        }
    }
    remote {
        helios.tcp {
            port = 0 #bound to a specific port
            hostname = 127.0.0.1
        }
    }
    cluster {
        seed-nodes = [""akka.tcp://ClusterSystem@127.0.0.1:9999""] # address of seed node
        roles = [""crawler""] # roles this member is in
        #role.[""crawler""].min-nr-of-members = 3 # crawler role minimum node count
    }

    }");

    actorSystem = ActorSystem.Create("ClusterSystem", baseConfig);
    //var clusterActor2 = actorSystem.ActorOf<EchoActor2>("myClusterPoolRouter");
    var router = actorSystem.ActorOf(Props.Create<ClusterActor>().WithRouter(FromConfig.Instance), "myClusterPoolRouter");
    Task.Delay(2000).Wait();

    var msg = new Hello("hi");
    router.Tell(msg);
    router.Tell(msg);
    router.Tell(msg);
}

...