Hi

I'm testing akka-http and I try to measure how many concurrent connections 
it can handle on my company's Linux VM (x86_64, 4 CPU).
I use the simple http server implementation provided in the akka-http 
documentation which you can find in the following github project created 
for illustrating this ticket: https://github.com/jycr/simple-akka-http

Using ApacheBench to stress the application (with option -c 2000), I 
measure that the server can't handle more than around 1000 requests per 
second.
Without success I changed the following to try to go over this limit:

   - updated the Linux settings to allow more than 4000 TCP concurrent 
   connections (ulimit -n, sysctl net.core.somaxconn, ifconfig txqueuelen, 
   sysctl net.core.netdev_max_backlog, sysctl net.ipv4.tcp_max_syn_backlog)
   - set akka.http.server.max-connections to 2048
   
I used YourKit to monitor the app and I could see the number of open 
sockets didn't go over the limit of 1200 open sockets per second. This 
makes me think the problem could be located in akka-io or in some kind of 
back-pressure feature which tell the underlying nio.Selector not to accept 
too many connections at once.

What am I missing here ? 

Thanks for your help

Attached a screenshot of YourKit showing the socket metrics


<https://lh3.googleusercontent.com/-iYRnadJsvyI/WEaGyJbP_EI/AAAAAAABHvA/JZcloGEdjDsLXtEhmvWTU3P-VODyWkS6QCLcB/s1600/yourkit_sockets.png>


-- 
>>>>>>>>>>      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 https://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to