[akka-user] Re: Akka Cluster Pub/Sub performance for chat-room like applications

2017-07-14 Thread Alexander Lukyanchikov
Thank you! I've subscribed there to follow further discussions. On Thursday, July 13, 2017 at 4:02:24 PM UTC+3, johannes...@lightbend.com wrote: > > On Thursday, July 13, 2017 at 1:08:19 PM UTC+2, Alexander Lukyanchikov > wrote: >> >> *The only question, is it capable

[akka-user] Re: Akka Cluster Pub/Sub performance for chat-room like applications

2017-07-13 Thread Alexander Lukyanchikov
Sure. It is Java + Play + Akka. AWS environment, c4.xlarge machines (4 CPU, 8 Gb RAM, 750 Mbs bandwidth) On Thursday, July 13, 2017 at 2:15:28 PM UTC+3, MJ wrote: > > Can you let us know the tech stack. > > On Thursday, July 13, 2017 at 4:38:19 PM UTC+5:30, Alexander Lukyanchi

[akka-user] Akka Cluster Pub/Sub performance for chat-room like applications

2017-07-13 Thread Alexander Lukyanchikov
Hi, we are building a message processing system, which is basically looks like a classic chat room: ~ 1 million devices are connected via websockets to a dozen of nodes - each of them subscribes on a number of topics - each of them publishes updates to the topics, and we should deliver these upd

[akka-user] Re: Akka cluster aware router delivers messages only SOMETIMES

2017-04-13 Thread Alexander Lukyanchikov
Small observation - messages start deliver to the "processor" node only when I send a lot of them (like ~ 20 per second). Looks like some kind of buffer involved in the problem, but I'm not sure. -- >> Read the docs: http://akka.io/docs/ >> Check the FAQ: >> h

[akka-user] Akka cluster aware router delivers messages only SOMETIMES

2017-04-13 Thread Alexander Lukyanchikov
Hi, I'm trying to configure a simple Akka cluster-aware router group, using 2 nodes ("receiver" and "processor" roles). Everything configured in code. on RECEIVER node: List path = singletonList("/user/processorRouter"); processorRouter = context().actorOf( new ClusterRouterGroup(new Roun

[akka-user] Akka with Java: remote actor deploy with SpringExtension

2017-04-12 Thread Alexander Lukyanchikov
Hi, We are using Akka with Java API, integrated with Spring Framework (each actor is Prototype scope Spring bean) There is no problem to create local actors, using Akka IndirectActorProducer (we use approach, described here

[akka-user] At-least-once delivery guarantee chat server

2017-04-04 Thread Alexander Lukyanchikov
Hi everyone, we are using Akka in production for notification mechanism (which is very close to chat server by semantics), but it is written in a very conservative way at the moment. It uses cache as a storage for relations, MQ middleware as a communication channel between the nodes. I'm looki

[akka-user] At-least-once delivery guarantee chat server

2017-04-04 Thread Alexander Lukyanchikov
Hi everyone, we are using Akka in production for notification mechanism (which is very close to chat server by semantics), but it is written in a very conservative way at the moment. It uses cache as a storage for relations, MQ middleware as a communication channel between the nodes. I'm looki

Re: [akka-user] Re: Memory leak: unexpected mailbox filling up

2016-10-06 Thread Alexander Lukyanchikov
course it builds up if you can't process the messages equal-or-faster >> than you get them? >> >> -- >> Cheers, >> √ >> >> On Oct 6, 2016 09:49, "Alexander Lukyanchikov" > > wrote: >> >>> >>> Sorry guys, quick

[akka-user] Re: Memory leak: unexpected mailbox filling up

2016-10-06 Thread Alexander Lukyanchikov
Sorry guys, quick update: Time interval actually affects the situation: if actor job time < scheduler interval, everything is good, no matter how many actors we have. When actor job time > scheduler interval and ACTOR_COUNT < 30, envelopes filling up and not garbage collected (millions of them

[akka-user] Memory leak: unexpected mailbox filling up

2016-10-06 Thread Alexander Lukyanchikov
Hi everyone, We have a pretty weird memory leak - akka.dispatch.Envelope instances are not garbage collected. Here is the code: List actors = new ArrayList<>(); for (int i = 0; i < ACTOR_COUNT; i++) { actors.add(system.actorOf(...)); } for (ActorRef actor : actors) { system.scheduler().sched