Re: [akka-user] Re: Akka HTTP performance for short lived connections

2016-04-18 Thread Adam
Yeah, no code is rather silly really... I've created this repository: https://github.com/adamhonen/Akka-Http-performance-test I didn't get a chance to try the suggestions above yet, though. On Monday, April 18, 2016 at 10:25:00 PM UTC+3, Konrad Malawski wrote: > > I see some results, but no

[akka-user] Re: ActorSystem.terminate() couldn't fully terminate the system

2016-04-18 Thread Yan Pei
John, After I upgrade AKKA to 2.4.4 and AKKA persistence cassandra to 0.12, the system.terminate() works well now. Thank you very much for your help! Emily On Monday, April 18, 2016 at 1:46:52 PM UTC-5, Johan Andrén wrote: > > Hi Emily, > > That specific stack trace is just the threadpool

Re: [akka-user] Re: Akka HTTP performance for short lived connections

2016-04-18 Thread Konrad Malawski
I see some results, but no code that is being benchmarked – please always post benchmarked code together with benchmark, otherwise it's hard to tell what's actually going on. On Mon, Apr 18, 2016 at 9:19 PM, Johan Andrén wrote: > Yet another thing to test could be to

[akka-user] Re: Akka HTTP performance for short lived connections

2016-04-18 Thread Johan Andrén
Yet another thing to test could be to pre-fuse your Request => Response flow, first, and then run that with autoFusing turned on or off. Locally I get the best improvement with pre-fusing and no autoFusing. Looks like this: implicit val materializer =

[akka-user] Re: Akka HTTP performance for short lived connections

2016-04-18 Thread Johan Andrén
One thing that could be interesting to try out if you want to achieve as high throughput as possible where each new request is a new connection with the current akka-http version is to disable autoFusing (which is pretty costly). That can be done when you create the materializer like this:

[akka-user] Re: ActorSystem.terminate() couldn't fully terminate the system

2016-04-18 Thread Johan Andrén
Hi Emily, That specific stack trace is just the threadpool parking the thread waiting for work, the if there is a thread that is occupied with something, it would show some of your application classes and methods in it's stack trace. Are you using the latest Cassandra driver? Any special

[akka-user] Re: ActorSystem.terminate() couldn't fully terminate the system

2016-04-18 Thread Yan Pei
I've simplified the Application to test this scenario by just printing out simple message inside the AbstractPersistentActorWithAtLeastOnceDelivery actor but with cassandra configuration inside application.conf. After changing the persistence from the cassandra to leveldb, the

[akka-user] Re: ActorSystem.terminate() couldn't fully terminate the system

2016-04-18 Thread Yan Pei
John, This is the one of the thread dump for one thread: Name: cluster6-scheduled-task-worker-0 State: TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@10d259d2 Total blocked: 0 Total waited: 26 Stack trace: sun.misc.Unsafe.park(Native Method)

[akka-user] Re: ActorSystem.terminate() couldn't fully terminate the system

2016-04-18 Thread Yan Pei
John, Thank you very much for your response. My application is very simple. Just plain System.out right once matching the received Command. I used the Reaper pattern to watch the created actor and tell the reapter to remove it from the list after finishing sending out all the messages the

[akka-user] Re: What config affects the number of threads for an ActorSystem?

2016-04-18 Thread Johan Andrén
Hi Steve, Did you have a look at the docs about dispatcher configuration? http://doc.akka.io/docs/akka/2.4.2/scala/dispatchers.html#default-dispatcher -- Johan Andrén Akka Team, Lightbend Inc. On Sunday, April 17, 2016 at 3:29:49 PM UTC+2, Steve Rehrauer wrote: > > I have an application that

[akka-user] Re: ActorSystem.terminate() couldn't fully terminate the system

2016-04-18 Thread Johan Andrén
Hi Emily, If an actor is blocking a thread and never returns it to the ActorSystem cannot do much about it, and if you try to terminate the ActorSystem it will never complete terminating. Blocking a thread could be actual processing that never stops or just takes a very long time, being

[akka-user] ActorSystem.terminate() couldn't fully terminate the system

2016-04-18 Thread Yan Pei
ActorSystem.terminate() works well with certain number of actors inside the system. Once I increase the actor number, the system().terminate() couldn't terminate the system, the application just hung on there and I have to manually kill it. (running from Eclipse) >From the log it's trying to:

[akka-user] Re: Akka HTTP performance for short lived connections

2016-04-18 Thread Andrew Gaydenko
Adam, thanks! Very informative. I also have found handy to use almost empty response to estimate the whole request-response chain itself (starting from now abandoned tiscaf [1] and rising rps up to almost 90K on humble workstation :) ). [1] http://gaydenko.com/scala/tiscaf/httpd/ --

[akka-user] [akka-http] How could one stop/cancel a RunnableGraph?

2016-04-18 Thread Fernando Benjamin
Hi there, I am implementing a Kafka Client and I would like to create one instance of RunnableGraph (listener) to listen to each Partition and keep the references to the runnables for further administration. One of the administration tasks is to stop listening to one of the partitions. 1. How