Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 08:19
    ismaelhamed synchronize #4097
  • 02:22
    kimbyungeun opened #4098
  • Dec 15 19:47

    Aaronontheweb on dev

    TypeExtensions.TypeQualifiedNam… (compare)

  • Dec 15 19:47
    Aaronontheweb closed #4071
  • Dec 15 19:47
    Aaronontheweb closed #3767
  • Dec 15 19:47
    Aaronontheweb labeled #3767
  • Dec 15 19:47
    Aaronontheweb labeled #3767
  • Dec 15 19:47
    Aaronontheweb milestoned #3767
  • Dec 15 19:44
    Aaronontheweb labeled #4097
  • Dec 15 19:44
    Aaronontheweb milestoned #4097
  • Dec 15 13:23
    Aaronontheweb commented #4096
  • Dec 15 13:22
    Aaronontheweb commented #4093
  • Dec 15 13:16
    ismaelhamed commented #4093
  • Dec 15 13:04
    ismaelhamed edited #4097
  • Dec 15 13:04
    ismaelhamed opened #4097
  • Dec 15 12:50
    ismaelhamed commented #4096
  • Dec 15 12:48
    ismaelhamed commented #4096
  • Dec 15 12:05
    Aaronontheweb commented #4096
  • Dec 15 11:43
    ismaelhamed commented #4096
  • Dec 14 19:13
    hwanders commented #4096
Natan Vivo
@nvivo
that's what I thought
I'm not sure what "requests" mean there and what they are doing
Also, I'm very skeptical about VMs.... sometimes we forget how faster a bare machine can be
Roger Johansson
@rogeralsing
Also orleans serialize all messages, because no immutable messages
Aaron Stannard
@Aaronontheweb
man those numbers
ewwwwwwwwwww
serializing every message will do that
their benchmark is probably comparing different stuff though
I would love to do an Akka.Cluster / Akka.Remote benchmark at some point
had an idea for a load-testing tool for Akka.Remote but haven't had any time to work on it
Aaron Stannard
@Aaronontheweb
btw, not sure who's interesting in using the Clustering module yet
but I have a patch coming in soon - hopefully this weekend, that enables full support for Pool routers
even have the multi-node tests to prove it :p
@rogeralsing for the ConsistentHashing stuff that we talked about - I'm just going to go full-bore and import virtual nodes while I'm atit
no reason for us not to have the latest stuff there
Aaron Stannard
@Aaronontheweb
plus, although it's not a perfect solution for #673, I think it offers a better solution that what we have now
Aaron Stannard
@Aaronontheweb
for anyone who wants to read the original Akka source - this is a life saver: http://jim-mcbeath.blogspot.com/2008/12/scala-operator-cheat-sheet.html
Roger Johansson
@rogeralsing
:+1
Roger Johansson
@rogeralsing
This is where the remoting fails for mono:
            try
            {
                var addressPromise = new TaskCompletionSource<IList<ProtocolTransportAddressPair>>();
                _endpointManager.Tell(new EndpointManager.Listen(addressPromise));

                addressPromise.Task.Wait(Provider.RemoteSettings.StartupTimeout);
                var akkaProtocolTransports = addressPromise.Task.Result;
Task.Result hangs forever
Roger Johansson
@rogeralsing
I get a Listen message in the endpoint manager.. then there are coming in some Prune messages into the endpointmanager too, which it doesnt handle?
cc @Aaronontheweb
ah, it does that in accepting phase , but it is not in that phase
Roger Johansson
@rogeralsing
hmmm Listens never completes, so the remoting is stuck in startup
         _listens = Task.WhenAll(tasks).ContinueWith(transportResults => transportResults.Result.ToList(), TaskContinuationOptions.ExecuteSynchronously | TaskContinuationOptions.AttachedToParent);
Aaron Stannard
@Aaronontheweb
@rogeralsing try doing this on that line - I see a bug in the TaskContinuationOptions
 _listens = Task.WhenAll(tasks).ContinueWith(transportResults => transportResults.Result.ToList(), TaskContinuationOptions.ExecuteSynchronously & TaskContinuationOptions.AttachedToParent);
meant to use bitwise AND
not bitwise OR
Mono's TPL implementation might check for those flags differently
coffeeyesplease
@coffeeyesplease
Hi there all. I’m about to use Akka.Net on a ASP.NET MVC application. The intention is here is to have communicate with another process remotely. My question is, do remote connections timeout?
thanks in advance
Aaron Stannard
@Aaronontheweb
Akka.Remote connections are perpetual unless one side of the connection fails to deliver heartbeats to the other
I don't recall what the default heartbeat settings are, I think 1 per second or 500ms
and if more than 3-4 heartbeats get missed then the connection is considered unhealthy and gets restarted
Akka.Remote connections are lazy too - outbound only turn on the first time you try to send a message to a remote address
but it listens for incoming connections immediately
Aaron Stannard
@Aaronontheweb
@coffeeyesplease was my answer helpful at all? If not let me know - happy to help out with Remoting since we don't have a lot of literature on it at the moment.
coffeeyesplease
@coffeeyesplease
@Aaronontheweb brilliant! Yes very helpful indeed.
I’m already following your advice in starting it all on Global.asax with a static reference
thank you :)
Aaron Stannard
@Aaronontheweb
good, that's a best practice
I had some plumbing I wrote somewhere that was pretty small - maybe 100-200 lines of code that made it very easy for all ASP.NET MVC controllers to publish messages to actors without needing to load any Akka.NET references inside the controllers themselves
via a static Publisher class or something
that I wired up with a reference to a specific router actor that published messages to remote systems
that only works if you don't need messages back from your actors though :p
coffeeyesplease
@coffeeyesplease
actually I don’t.. it’s all one way.. if the actor finishes the process.. then great.
if not then, oh well...
Aaron Stannard
@Aaronontheweb
yeah, mine was the same way - had to hand off a massive amount of messages per second to our analytics system