Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 12:20
    IgorFedchenko commented #3973
  • 12:17
    IgorFedchenko commented #3973
  • 11:58
    IgorFedchenko synchronize #3973
  • 11:33
    IgorFedchenko commented #3973
  • 11:25
    IgorFedchenko synchronize #3973
  • 07:04
    dependabot-preview[bot] labeled #3996
  • 07:04
    dependabot-preview[bot] opened #3996
  • 07:04

    dependabot-preview[bot] on nuget

    Bump Microsoft.NET.Test.Sdk fro… (compare)

  • 07:04
    dependabot-preview[bot] labeled #3995
  • 07:04

    dependabot-preview[bot] on nuget

    Bump BenchmarkDotNet from 0.10.… (compare)

  • 07:04
    dependabot-preview[bot] opened #3995
  • Oct 17 22:42
    Aaronontheweb commented #3944
  • Oct 17 22:41
    Aaronontheweb commented #3973
  • Oct 17 21:17
    IgorFedchenko commented #3973
  • Oct 17 21:08
    IgorFedchenko commented #3973
  • Oct 17 19:59
    IgorFedchenko synchronize #3973
  • Oct 17 19:34
    IgorFedchenko synchronize #3973
  • Oct 17 16:12
    Aaronontheweb commented #3993
  • Oct 17 15:51
    dependabot-preview[bot] synchronize #3991
  • Oct 17 15:51

    dependabot-preview[bot] on nuget

    Bump Microsoft.Extensions.Depen… (compare)

Aaron Stannard
@Aaronontheweb
yep
let me find it
Peter Bergman
@peter-bannerflow
Cool
my talk was only 30 minutes long
so I have no idea why the video is 60 minutes
Arjen Smits
@Danthar
lol that screenshot
Peter Bergman
@peter-bannerflow
Thx
Arjen Smits
@Danthar
its like: "kudos to that guy with the question!"
Peter Bergman
@peter-bannerflow
About the files, is two way (Akka.Remote.Tests.Performance.Transports.HeliosRemoteMessagingThroughputSpec+TwoWay) like an actor receiving a message from the network and then responding with a message to the sender?
Aaron Stannard
@Aaronontheweb
just an FYI: I got some of the causes and reasons behind the prior performance issues with Akka.Remote mixed up during the talk because I couldn't see my notes with the way our monitors were laid out
so I was going from memory, and some of that turned out to be mixed up
the lazy evaluation stuff was actually an issue with slowly creating / shutting down children
different performance issues
but aside from the technical detail there, the major point is true
Peter Bergman
@peter-bannerflow
Alright
Aaron Stannard
@Aaronontheweb
@peter-bannerflow yep, that's correctr
you can see the source for the benchmarks in any of the *.Tests.Performance projects
Peter Bergman
@peter-bannerflow
Cool, in the video you mention that the metrics in the graph show the number of messages pushed through a single Akka.Remote connection, would that be one instance of a process running an application with Akka.Remote that binds to one port ?
Curtis Swartzentruber
@skills0
@Aaronontheweb thanks for feedback, however both the nodes are seed nodes and both cluster configs have both nodes listed. The active/passive bit is managed by our code, I should've made that more clear.
Aaron Stannard
@Aaronontheweb
@skills0 check out some of our Akka.Cluster.Tests.MultiNode
we cover a big range of cluster disconnect / leave scenarios in there and verify they all leave correctly
in your scenario, does the cluster think the node is unreachable or has the node been removed from the membership?
Curtis Swartzentruber
@skills0
I'll check that out. Let me find the exception sequence.
Aaron Stannard
@Aaronontheweb
that'd be great
and please file a Github issue
it's easier to refer back to if there's a problem than Gitter chat
more persistent that way
Curtis Swartzentruber
@skills0
@Aaronontheweb i will put together an issue, but basically we call Cluster.Leave on seed node A, the seed node B goes through some association failure exceptions, marks A unreachable, but then keeps trying to associate with it. Helios then gets into a loop of connection errors (Error connecting, SocketException, etc.). Eventually node B gets "Leader can currently not perform its duties" and at that point the whole AkkaSystem on the up node just seems to stop working consistently.
Aaron Stannard
@Aaronontheweb
if A leaves and finishes the leave process, it will not be marked as unreachable
so when you call Cluster.Leave, do you wait for A to receive a local MemberRemoved event for itself?
or Cluster.RegsiterOnMemberRemoved delegate
before shutting down the actor system?
boekabart @boekabart thinks a helper method for that might be useful...await Cluster.LeaveAsync() or so
qwoz
@qwoz
"it's like watching ferrets describe how a supernova works" ... rofl!
Bartosz Sypytkowski
@Horusiath
:+1: for Cluster.LeaveAsync()
Aaron Stannard
@Aaronontheweb
yeah, that could work
would basically just need to send an actor a message when the Cluster.RegisterOnMemberRemoved delegate fires
and that actor would complete a TaskCompletionSource
Curtis Swartzentruber
@skills0
yeah guys, on closer review of the logs I'm thinking this may be operator error (pebkac). we mainly test in console apps and then deploy as service. I'm wondering if I'm not giving the AkkaSystem a chance to finish all the shutdown. thanks for the idea on waiting for MemberRemoved for self, hadn't thought of that. Getting ready to test some stuff around that.
Aaron Stannard
@Aaronontheweb
@ZoolWay I had to patch Helios anyway as part of 1.1.1
to solve some DNS resolution issues
went ahead and handled that exception better also
Ivan R. Perez
@irperez
blob
@Aaronontheweb I'm beginning my work on that "ReliableMessageBroker" that we spoke about a few weeks ago. Where should that live? In the pubsub as above?
Or should this be in its own folder?
Ricky Blankenaufulland
@ZoolWay
@Aaronontheweb Thanks, I am looking forward to 1.1.1. Meanwhile I could solve all leaving issues. As you said before, it is very important to give the actor system the time to complete the leave process. Also I have built myself a helper app which can down abandoned nodes.
So the last problem was that I got one ASP.NET core project which seemed not to be able to complete the leave. It was different in how the ActorSystem was created. In the problematic project I created the ActorSystem inside a lambda which worked as implementation factory to the IServiceProvider of ASP.NET. My ActorSystemProvider is now a separate service class and it now works out. Not sure, maybe it got something to do with the thread context where the actor system had been created.
Would you like to investigate on that? I would then try to add a sample for the failing to the GitHub repo.
Peter Bergman
@peter-bannerflow
If I want to broadcast a message to all children of an actor, what would the preferred way of doing that be? Would it be to do a Context.GetChildren() and then iterate over that. Or is it more efficient to use a broadcast-group-router? The children needs to be created excplictly in a specific workflow so I cannot use a pool router.
Peter Hvidgaard
@hvidgaard

Hi. I'm evaluating Akka.net, and I'm trying to figure out on what level to use it in a WPF application. I cannot find any solid info about it, so I hope to get some input here.

As it stands, I'm using an CQRS approach, in which I send commands to PersistentActors, and PersistentView (to be PersistenceQuery I believe) to get the data. Is it "the wrong way" to have my viewmodel depend on the IActorRefFactory, and create the View/Query actor to populate the viewmodel with data?

Arjen Smits
@Danthar
@peter-bannerflow I would go with the iterate over Context.GetChildren approach()