Re: [akka-user] Re: Send message from netty code to actor system
Hello Muthukumaran, I'm not actually using nettty but cloudhopper-smpp. It uses netty. I couldn't work out how to integrate cloudhopper-smpp with Akka and hence I was looking at netty to understand ways of integrating cloudhopper-smpp to netty. I'm wrapping each SmppSession inside it's own actor. On Friday, 6 February 2015 10:54:37 UTC, Muthukumaran Kothandaraman wrote: Few things to take care of using a router at InboundHandler - ensuring that routees are available before the connections are being accepted - ensuring that ChannelContextHandler - passed in message, is not stored by routee actor internally for any purposes. This should be sufficient for pure req/reply pattern Regards Muthu On Thursday, 5 February 2015 03:39:18 UTC+5:30, Jabbar Azam wrote: After alot of head scratching I came to same conclusions as you. It's good to see somebody else having the same ideas. On Wednesday, 4 February 2015 21:06:11 UTC, Ngoc Dao wrote: Generally there are 2 ways to design for this problem: Once you have an actor reference, you can send things to it. So you can simply do this: targetActorRef ! myThing When the actor is done with the processing, it will call: myThing.myMethod This design is OK when the target actor is very reliable and it lies in the same node with myThing. Another way, is to use an actor to wrap around myThing. This wrapper actor will communicate with targetActorRef. It may watch targetActorRef to handle the case when targetActorRef dies, targetActorRef doesn't respond after some timeout etc. On Wednesday, February 4, 2015 at 10:09:19 PM UTC+9, Jabbar Azam wrote: I found some nice example showing integration of netty with akka on github. This is what I'm looking at https://github.com/gibffe/fuse specifically https://github.com/gibffe/fuse/blob/master/src/main/java/com/sulaco/fuse/netty/FuseChannelHandler.java Its embarrassingly simple :) On Tuesday, 3 February 2015 13:48:47 UTC, Jabbar Azam wrote: Oops I meant channel handler. On Tuesday, 3 February 2015 13:32:21 UTC, Jabbar Azam wrote: Hello, Sorry for the late reply. For some reason the forum messages didn't get forwarded to my email. I was thinking of using typedactors because I am trying to integrate non actor code(cloudhopper SMPP which uses netty) into an actor system. Netty does use callbacks so I can use asynchronous behaviour. Do you think I could encapsulate a netty channel inside an actor? A netty channel can call callbacks whenever something changes in the channel. On Friday, 30 January 2015 12:38:14 UTC, Björn Antonsson wrote: Hi, Are you sure that you need to block the sending code while the actor does its work? Is there an asynchronous API in netty that you can use where the actor would invoke a callback when it has finished processing the packet? B/ On 27 January 2015 at 11:03:26, Jabbar Azam (aja...@gmail.com) wrote: I think I need to look at typedactors. On Tuesday, 27 January 2015 09:29:43 UTC, Jabbar Azam wrote: Hello, How do I send a message from java non actor based code into an actor system? The code will be running on the same node and will be part of the same source code. So netty will be running, receiving packets, which will send any received packets into an actor system. The actor system will process the packets and then send the response payload back to the netty code. -- 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 akka-user+...@googlegroups.com. To post to this group, send email to akka...@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Björn Antonsson Typesafe http://typesafe.com/ – Reactive Apps on the JVM twitter: @bantonsson http://twitter.com/#!/bantonsson -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Re: Akka Cluster Actor Failover and Rebalancing, is it possible?
There are probably a few ways to do this. Most straight forward might be to start a local actor as part of each node's startup code. Then use Akka clustering to observe node failures. Use some deterministic strategy to reallocate that actor on some other host (let's say failed +1 in your ring). When the old node comes back up it starts its actor normally and then asks node current +1 to remove that actor from its AS. Another way might be to use cluster sharding with a completely balanced distribution and rememberEntries = true. Akka would do more magic for you. This may not totally be what you want. This would guarantee 1 actor per server, however which actor was on which server wouldn't be deterministic. You might be able to provide some additional allocation strategy to Akka sharding that would give you additional control over placement, but that seems like a rabbit hole to me. Even if I could get it to work, I've worked too hard vs. option 1 and it may not be clear to the next developer what's going on. -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] ActorRefProvider.actorSelection cannot find a PromiseActorRef
Hi all, I got a path of a PromiseActorRef and try to send a message to this path. It seems the message will not be received by the PromiseActorRef. class SimpleActor extends Actor { override def receive: Receive = { case _ = val path = sender().path.toSerializationFormat context.actorSelection(path) ! Hi } } val actor = system.actorOf(Props[SimpleActor]) val result = Await.result(akka.pattern.ask(actor, 42), Duration.Inf) akka 2.3.9 (scala 2.11.4) Any idea? Thanks, IL -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] ActorRefProvider.actorSelection cannot find a PromiseActorRef
Incidentally there is an open PR for fixing this: https://github.com/akka/akka/pull/16690 https://github.com/akka/akka/pull/16690 This will be sorted out in the coming week, let’s see whether this can be done for 2.3.10 or not. Regards, Roland 7 feb 2015 kl. 20:49 skrev IL iron9li...@gmail.com: Hi all, I got a path of a PromiseActorRef and try to send a message to this path. It seems the message will not be received by the PromiseActorRef. class SimpleActor extends Actor { override def receive: Receive = { case _ = val path = sender().path.toSerializationFormat context.actorSelection(path) ! Hi } } val actor = system.actorOf(Props[SimpleActor]) val result = Await.result(akka.pattern.ask(actor, 42), Duration.Inf) akka 2.3.9 (scala 2.11.4) Any idea? Thanks, IL -- Read the docs: http://akka.io/docs/ http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user 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 akka-user+unsubscr...@googlegroups.com mailto:akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com mailto:akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout https://groups.google.com/d/optout. Dr. Roland Kuhn Akka Tech Lead Typesafe http://typesafe.com/ – Reactive apps on the JVM. twitter: @rolandkuhn http://twitter.com/#!/rolandkuhn -- 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 akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.