Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 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)

  • Oct 17 15:51
    dependabot-preview[bot] synchronize #3989
  • Oct 17 15:51

    dependabot-preview[bot] on nuget

    Bump ApiApprover from 3.0.1 to … (compare)

  • Oct 17 15:51
    dependabot-preview[bot] edited #3991
  • Oct 17 15:51
    dependabot-preview[bot] edited #3989
  • Oct 17 15:51
    dependabot-preview[bot] synchronize #3985
  • Oct 17 15:51

    dependabot-preview[bot] on nuget

    Bump FsCheck.Xunit from 2.9.0 t… (compare)

  • Oct 17 15:51
    dependabot-preview[bot] edited #3985
  • Oct 17 15:51
    dependabot-preview[bot] synchronize #3982
  • Oct 17 15:51

    dependabot-preview[bot] on nuget

    Bump FsPickler from 5.2.0 to 5.… (compare)

  • Oct 17 15:51
    dependabot-preview[bot] synchronize #3986
  • Oct 17 15:51
    dependabot-preview[bot] synchronize #3983
John Haigh
@haighis
@Aaronontheweb akkadotnet/HOCON#11
Aaron Stannard
@Aaronontheweb
thanks @haighis
working on syncing all of my repos to Travis now
I figure it'd be fun to switch things up a bit a give Travis a try on this repo
John Haigh
@haighis
@Aaronontheweb make sure you specify the solution name correctly.. I didn't ...can you merge this PR akkadotnet/HOCON#25
Suhas Chatekar
@schatekar
@Aaronontheweb I added some questions on the PR for the multinode spec you ported. This is more for my understanding of how the spec works
I am not sure if it was appropriate to add comments on the PR though
Tomas Vana
@creepone
blob
@Aaronontheweb I boiled it down to this gist. I start 2 instances of this app, reconfiguring each to point to the other one. If I kill one of them and wait for ca. 2 seconds, the first one does get the Terminated message and Peer terminated is printed. However, if I'm too fast to restart the killed instance running on the same port, the first one gets confused, spits out the errors above and the Terminated message is not received.
Roger Johansson
@rogeralsing
@creepone that sounds like an UID issue, the new system should not get the same UID as the previous one and the cluster should not think they are the same
Tomas Vana
@creepone
@Aaronontheweb I just figured that adding AwaitTermination after the Shutdown call fixes it both in 1.0.4 and 1.0.5 if I stop it gracefully. When killing it hard, even in 1.0.5 the behavior is same though. Of course when under my control I can try to gracefully close it down, but what if it crashes on me and gets restarted automatically ?
@rogeralsing That sounds plausible. Is there any way to confirm (find out what the UIDs are) ?
Roger Johansson
@rogeralsing
what bits are you running? nuget or dev branch?
Tomas Vana
@creepone
I tried both nuget and 1.0.5.69-beta from the MyGet feed.
Bartosz Sypytkowski
@Horusiath
@Aaronontheweb why did you put all of the spec porting tasks in a separate issues each? This feels a little messy for me
also guys, what is the state of the Paket in akka.net?
Roger Johansson
@rogeralsing
@Horusiath I think the individual issues are good, easier for new contrbutors to pick just one and complete that one
also, IMO we should have a meeting regarding Paket and Migrant, not stuff we can decide too lightly
Bartosz Sypytkowski
@Horusiath
@rogeralsing I have a hard time in my work right now, I couldn't manage enough time to test Migrant myself, my concern is still performance comparison
billyxing
@billyxing
@Aaronontheweb here is the gist where I am setting it up and handling terminated message. gist
Steven van der Merwe
@SaberZA
Hey all, I'm trying to assess the use of Akka.Net in production. Currently, I'm looking at some sort of DDD approach with async / non-blocking IO operations for all my logic components, and I just feel that Actors is the space that I need to be in right now. I am also likely to have scaling problems, so the actor model seems even more viable. Is the current Akka.Net version stable enough for production?
Roger Johansson
@rogeralsing
@Horusiath Ill do some benchmark tests. My guess is that network will be a larger overhead than serialization
They do use reflection emit heavily so i think they have perf under control. But Ill check it out
Bartosz Sypytkowski
@Horusiath
@SaberZA we already have a guys running it on production
Geert Van Laethem
@GeertVL
What is the best time of the day to ask for new issues to work on?
Key contributors are not online whole day I suppose.
Roger Johansson
@rogeralsing
I think we are, some in the US and some on Europe.
Geert Van Laethem
@GeertVL
@rogeralsing can you give me a new issue or thing I can work on to help?
Roger Johansson
@rogeralsing
Im out right now, check any "up for grabs" or "help wanted" issue and just add a comment to the one you want
Geert Van Laethem
@GeertVL
@rogeralsing ok I will do that.
Maciek Misztal
@mmisztal1980
Hey guys, I'm writing a simple tool to stress-test one of our apps, I'd apreciate a hint on how to measure the execution time of the HttpClient and attach it via PipeTo? (currently I'm piping the HttpResponseMessage :worried:
using (var client = new HttpClient())
            {
                var request = new HttpRequestMessage(msg.HttpMethod, msg.Uri);

                client
                    .SendAsync(request)
                    .PipeTo(Self);
            }
Coinio
@Coinio
Hey guys. Love Akka.net so far and working through the bootcamp... Are any of you aware of any decent code demos / articles on Akka for games? I can only find very simple examples, which don't really address the issues I'm thinking about, mainly sharing /maintaining a single state of the world between each of the players/AIs. Each AI will need to know the state of the world in order to make decisions, and I can't think of how this would work without having some central MapActor that each AIActor has to ask/tell everything, which would seem like the MapActor ends up being a bottleneck. Is this one of the cases were Akka isn't necessarily a good fit?
Anthony Brown
@bruinbrown
@Coinio I've not got anything written up but last September time I tried using Akka.Net on client game development. Is that what you're thinking of or more for backend stuff?
Bartosz Sypytkowski
@Horusiath

@mmisztal1980 you can create a custom response wrapper in SendAsync continuation like:

using (var client = new HttpClient())
{
         var request = new HttpRequestMessage(msg.HttpMethod, msg.Uri);

         var start = DateTime.UtcNow;
         client
               .SendAsync(request)
               .ContinueWith(task => !(task.IsCancelled || task.IsFaulted) ? new SuccessfulResponse(task.Result, start: start, stop: DateTime.UtcNow) : new FailedResponse(task.Result, start: start, stop: DateTime.UtcNow) , 
                      TaskContinuationOptions.AttachedToParent|TaskContinuationOptions.ExecuteSynchronously)
               .PipeTo(Self);
}

Task continuation options are used here to not spawn separate tasks for one simple operation (creating message wrapper), we attach it to task running SendAsync instead.

Coinio
@Coinio
Just a simple single player monogame project for now, to test out/learn Akka.Net
Bartosz Sypytkowski
@Horusiath
@Coinio there are some examples on akka (jvm version) used for game dev - you can use those examples, API for both versions (JVM and .NET) is very similar. Have you tried that?
also depending on how big the state of the world will be and it's ability to be partitioned (maybe actor don't need the whole state, only slice of it), the different strategies may apply
Coinio
@Coinio
@Horusiath I've come across a couple but I can't seem find any real code examples that are more than simple test games. I'll keep searching and finish the bootcamp first before I start getting ahead of myself :)
Maciek Misztal
@mmisztal1980
cheers!
Damian Reeves
@DamianReeves
Concerning PipeTo: If my intent is to allow my Actor to continue processing other messages while a long running task runs, then I don't need to use PipeTo correct?
Bartosz Sypytkowski
@Horusiath
@DamianReeves
  1. Don't introduce concurrency on an actor level. You'll introduce all problems of concurrency actors are supposed to solve. If you have long running tasks, isolate them in dedicated actors.
  2. PipeTo is used by and actor to keep up with task completion acknowledgements. You can use it without problems.
Damian Reeves
@DamianReeves
@Horusiath thanks. Point 1. has been my preferred approach, but I wasn't sure if something else was preferred.
So if I need to write a file from records in a database I do:
  1. Create an Actor for the whole process, lets call it DataWriterActor
  2. Create a child of DataWriterActor called DataExtractor
  3. Do data access in DataExtractor
  4. Tell parent of results
    Is this the recommended approach?
Bartosz Sypytkowski
@Horusiath
except making them a parent/child relation, yes :)
Damian Reeves
@DamianReeves
You keep them totally independent?
Bartosz Sypytkowski
@Horusiath
both of those actor types are making potentially risky operations, you could supervise them with dedicated parent actors and simply keep an actor ref between them
Damian Reeves
@DamianReeves
Ok got it
Roger Johansson
@rogeralsing
@skotzko what is the new "ready" label about ? it shows up on tasks that are not yet started so that seems odd
Weston
@ronnyek
so with the io shit, can the actors be multiplexed against same port on same ip?
or is it like the actors host the tcp endpoint?
Sean Killeen
@SeanKilleen
@rogeralsing maybe "ready" in the sense that tasks are ready to be worked on (e.g. acknowledged / explained enough)? Just spitballing a guess.