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
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
@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.
@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 :)
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
actually I don’t.. it’s all one way.. if the actor finishes the process.. then great.
if not then, oh well...
yeah, mine was the same way - had to hand off a massive amount of messages per second to our analytics system
front-end API just needed to acknowledge that we had received them
didn't need to acknowledge if we had finished post-processing
I have a look around… in these coming weeks I’ll be knee deep in Akka.Net
that’s precisely the problem I’m also trying to solve