Hi Eduardo, The problem is that in your case no matter how large you choose your buffer sizes, they will blow up because there is no backpressure between the two actors. This is independent of remoting, you can blow up mailboxes even locally. The issue with stash/unstash only comes into the picture because the buffer grows out of bounds. Even if that issue would not exist, eventually GC kicks in due to continuously increasing memory usage.
-Endre On Tue, Mar 25, 2014 at 11:00 AM, Vitaliy V. Shopov < [email protected]> wrote: > And what is your updated benchmark result?) > > > 2014-03-25 13:57 GMT+04:00 Eduardo Fernandes <[email protected]>: > > Many thanks for your suggestions. >> >> I'll check the profiling and the settings below. >> >> Thanks again for your quick answer! >> >> >> 1. >> 2. # Sets the send buffer size of the Sockets, >> 3. # set to 0b for platform default >> 4. send-buffer-size = 256000b >> 5. >> 6. # Sets the receive buffer size of the Sockets, >> 7. # set to 0b for platform default >> 8. receive-buffer-size = 256000b >> >> >> El martes, 25 de marzo de 2014 09:46:28 UTC+1, Akka Team escribió: >>> >>> Hi Eduardo, >>> >>> >>> On Tue, Mar 25, 2014 at 2:08 AM, Eduardo Fernandes <[email protected]>wrote: >>> >>>> Hi all. >>>> >>>> I'm pretty sure this is because I don't have the correct configuration >>>> on my side. Please find in the attached file a simple Eclipse Kepler Maven >>>> project with an echo actor. I'm using Akka 2.3. >>>> >>>> The basic configuration is >>>> >>>> actor { >>>> provider = "akka.cluster.ClusterActorRefProvider" >>>> default-dispatcher { >>>> throughput = 1024 >>>> fork-join-executor { >>>> parallelism-max = 4 >>>> } >>>> } >>>> default-mailbox { >>>> mailbox-type = "akka.dispatch.SingleConsumerOnlyUnboundedMailbox" >>>> } >>>> } >>>> >>>> Based on other thread in this group. After heating the JVM I got around >>>> 11.000 msg per second. A small and basic program with NIO give me around >>>> 45.000 in the same machine, using the loopback interface. >>>> >>> >>> If you refer to the other localhost remoting benchmark thread, the >>> related ticket is here: https://www.assembla.com/ >>> spaces/akka/simple_planner#/ticket:3960 >>> >>> You can check with a profiler and see if most of the time spent in >>> unstash/stash in EndpointWriter to verify that it is the same issue. >>> >>> If you properly backpressure messages between the two nodes there should >>> be no performance loss due to unstashing, you only need to increase the tcp >>> send buffer. The stash/unstash death spiral only pops up because buffers >>> are blowing up. >>> >>> >>>> >>>> I need to use a single actor due to processing requirements. I'm using >>>> a simple sharding and a single frontend / backend topology (configured >>>> using roles). >>>> >>>> Is it possible to flush the low level TCP channel based, for example, >>>> in the volume of pending command to all actors belonging to a particular >>>> host? Or is this already done based on some setting? >>>> >>> >>> Messages are pumped out to TCP as soon as possible, there is no flushing >>> involved. >>> >>> -Endre >>> >>> >>>> >>>> Many thanks for any help. >>>> >>>> Best regards, >>>> >>>> Eduardo. >>>> >>>> >>>> -- >>>> >>>>>>>>>> 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 [email protected]. >>>> To post to this group, send email to [email protected]. >>>> >>>> Visit this group at http://groups.google.com/group/akka-user. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> >>> >>> -- >>> Akka Team >>> Typesafe - The software stack for applications that scale >>> Blog: letitcrash.com >>> Twitter: @akkateam >>> >> -- >> >>>>>>>>>> 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 [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/akka-user. >> For more options, visit https://groups.google.com/d/optout. >> > > -- > >>>>>>>>>> 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 [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/akka-user. > For more options, visit https://groups.google.com/d/optout. > -- Akka Team Typesafe - The software stack for applications that scale Blog: letitcrash.com Twitter: @akkateam -- >>>>>>>>>> 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
