I thought there was something specific I was doing wrong in an application 
I have deployed in development, which eventually needs to be production 
ready.

Over time, the Akka actor system slowly consumes all available memory.  I 
assumed it was a memory leak that I introduced, but as it turns out, even 
the sample Typesafe "hello-akka" app demonstrates the same heap consumption.

http://www.typesafe.com/activator/template/hello-akka


If you let the sample application above run for a "very long", the heap 
usage slowly grows, and is never released.  Although, it is "Very Slow"
Since it is set to send a message to the "greeter" only every 1 second, 
this isn't very apparent.  

I simplified the pattern I am using in an actual application, that 
demonstrates the same issue, but at an accelerated rate.
This is modeled after the "Scheduling Periodic Messages" pattern described 
here:

http://doc.akka.io/docs/akka/snapshot/scala/howto.html


The full sample code to recreate the memory consumption, with heap usage 
logging is available at the gist below.  (note: if you start with the 
hello-akka sample application, and replace "HelloAkkaScala.scala" with this 
gist below, you can reproduce.  You will need to add to your build.sbt the 
following (as mentioned in the comments at the top of the gist)

  "com.kenshoo" %% "metrics-play" % "2.3.0_0.1.9"  

https://gist.github.com/jeffsteinmetz/bbccb4815858620ab5a2

You may need to let it run for about 1 to 2 minutes before you see the 
"initial" bump in heap usage.  After that, you will see it slowly climb and 
never back down.
Note - the metrics calls are not required, and do not cause the memory leak 
- you can watch system memory without this library and see the same issue.

I've tried a few versions of Akka, with the same results.  In production, a 
similar (real world) application eventually consumes all memory.

Hoping for a little insight on the Akka internals, and potential solution.

J





-- 
>>>>>>>>>>      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.

Reply via email to