On Thu, Sep 24, 2015 at 6:59 PM, <[email protected]> wrote: > I am trying to set up an akka Cluster that includes a ClusterSingleton, > ClusterSingletonManager and ClusterSingletonProxy which in turn seems to > necessitate using a ClusterClient, ClusterReceptionist and > DistributedPubSubMediator. >
ClusterSingleton can be used without ClusterClient, ClusterReceptionist and DistributedPubSubMediator. > I am more or less following the typesafe activator code, but it is > out-of-date (uses the old contrib code), so I've made modifications to > match the 2.4 RC3 API. > There is a pull request for the 2.4 update here: https://github.com/typesafehub/activator-akka-distributed-workers/pull/14/files Perhaps you can compare with that? /Patrik > > I am working through the complexity of this, and have made progress, but I > am finding that the cluster client is sending messages to the > ClusterReceptionist that are never being received. > > My current guess is that it has something to do with the fact that my > ActorSystems seem to have a root path of akka://ClusterSystem whereas the > actors are created with paths that look like akka.tcp:// > [email protected]:8888. > > For instance, here you can see that the ClusterSingletonManager creates > the master with an akka://SomeSystem path: > > INFO - Singleton manager starting singleton actor > [akka://ClusterSystem/user/master/singleton] > INFO - ClusterSingletonManager state change [Start -> Oldest] > DEBUG - Trying to identify singleton at [akka.tcp:// > [email protected]:8888/user/master/singleton] > INFO - Singleton identified at > [akka://ClusterSystem/user/master/singleton] > DEBUG - Sending buffered messages to current singleton instance > > As for the ClusterClient talking to the ClusterReceptionist, the client > is instantiated with an initial contact of Set(akka.tcp:// > [email protected]:8888/user/receptionist). > > However, the actors that are created by virtue of including the extensions > are created in akka://ClusterSystem > > extensions = [ > "akka.cluster.pubsub.DistributedPubSub", > "akka.cluster.client.ClusterClientReceptionist" > ] > > > I tried using akka://ClusterSystem/user/receptionist as the initial contact > path, but then I get: > > > ERROR - No transport is loaded for protocol: [akka], available protocols: > [akka.tcp] > > akka.actor.ActorInitializationException: exception during creation > > > > relevant config below: > > > clusterSystem { > akka { > actor.provider = "akka.cluster.ClusterActorRefProvider" > > extensions = [ > "akka.cluster.pubsub.DistributedPubSub", > "akka.cluster.client.ClusterClientReceptionist" > ] > > remote { > enabled-transports = ["akka.remote.netty.tcp"] > netty.tcp { > hostname = "127.0.0.1" > port = 8888 > } > } > > cluster { > singleton { > singleton-name = "singleton" > role = "" > hand-over-retry-interval = 60s > } > singleton-proxy { > singleton-name = "singleton" > role = "" > singleton-identification-interval = 60s > buffer-size = 1000 > } > client { > *#this gets assigned programmatically* > initial-contacts = [] > > *#..default stuff here* > > receptionist { > # Actor name of the ClusterReceptionist actor, /system/receptionist > name = receptionist > > # Start the receptionist on members tagged with this role. > # All members are used if undefined or empty. > role = "" > > # The receptionist will send this number of contact points to the > client > number-of-contacts = 1 > > # The actor that tunnel response messages to the client will be > stopped > # after this time of inactivity. > response-tunnel-receive-timeout = 30s > > # The id of the dispatcher to use for ClusterReceptionist actors. > # If not specified default dispatcher is used. > # If specified you need to define the settings of the actual > dispatcher. > use-dispatcher = "" > } > } > } > } > } > > workerSystem { > akka { > remote { > enabled-transports = ["akka.remote.netty.tcp"] > netty.tcp { > hostname = "127.0.0.1" > port = 9999 > } > } > } > } > > > Hoping someone can see what I'm doing wrong... Thanks! > > -- > >>>>>>>>>> Read the docs: http://akka.io/docs/ > >>>>>>>>>> Check the FAQ: > http://doc.akka.io/docs/akka/current/additional/faq.html > >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user > --- > You received this message because you are subscribed to the Google Groups > "Akka User List" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/akka-user. > For more options, visit https://groups.google.com/d/optout. > -- Patrik Nordwall Typesafe <http://typesafe.com/> - Reactive apps on the JVM Twitter: @patriknw -- >>>>>>>>>> Read the docs: http://akka.io/docs/ >>>>>>>>>> Check the FAQ: >>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups "Akka User List" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
