Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 21:29
    Aaronontheweb commented #3863
  • 21:28
    Aaronontheweb synchronize #3863
  • 21:18
    Aaronontheweb synchronize #4000
  • 21:17
    Aaronontheweb commented #3964
  • 21:17
    Aaronontheweb commented #3964
  • 21:16
    Aaronontheweb synchronize #3964
  • 21:12
    Aaronontheweb commented #3964
  • 21:08
    Aaronontheweb synchronize #71
  • 21:04
    Aaronontheweb synchronize #3973
  • 21:00
    Aaronontheweb commented #71
  • 20:58

    Aaronontheweb on dev

    Akka.Persistence.TCK fix - chec… (compare)

  • 20:58
    Aaronontheweb closed #4002
  • 20:51
    Aaronontheweb synchronize #4002
  • 20:45
    Aaronontheweb commented #3811
  • 20:45
    Aaronontheweb commented #3811
  • 20:44
    Aaronontheweb labeled #4002
  • 20:43
    Aaronontheweb milestoned #4002
  • 20:43
    Aaronontheweb opened #4002
  • 20:37
    Aaronontheweb synchronize #71
  • 20:20
    Aaronontheweb synchronize #71
Aaron Stannard
@Aaronontheweb
it's when you start trying to use the Context outside of the actor's running scope where things get weird
Chris Martin
@trbngr
cool
Chris Martin
@trbngr
Optimized Akka.Persistence.EventStore. It will now use only one IEventStoreConnection per the ES docs. I also add an implementation of PersistentView called EventStoreSubscriptionView that uses an EventStoreSubscription to stay up to date instead of an PersistentView.AutoUpdateInterval
Still no tests, however ;)
Chris Martin
@trbngr
Is there a way to grab a ILoggingAdapter from an ActorSystem? I need one pretty early
:blush: system.Log
Thomas Lazar
@thomaslazar
@Aaronontheweb: i know apache thrift employs or better recommends an extend-only design of their interfaces. to make it backwards compatible to an extend
they have numbered fields in their definitions that you're not supposed to change on edit. and just extend with new numbers
varghesep
@varghesep
I don't normally get any response for the questions that I post here. They get lost in this chat. So I posted some code on Stack Overflow at http://stackoverflow.com/questions/30956153/service-fabric-akka-net-and-persistent-actor-integration
Please share your comments, improvements needed so everyone can learn from it. The example has the integration of Service Fabric, AKKA.NET and Persistence.
Roger Johansson
@rogeralsing
@Horusiath under what conditons does akka.persistence need to serialize journal/snapshot with special transport information?
Weston
@ronnyek
So i've been lookng a bit into project orleans, and it seems like its much much more targetting the idea of basically short lifecycle fire up a grain, change state persist state dismiss
not so much having a distributed pool of workers
so I'm wondering if akka.net is more for that. Seems like its a good way to manage a distributed pool of workers, with managers at certain levels
Error handling etc
Roger Johansson
@rogeralsing
@ronnyek there is a great comparison of akka vs orleans here https://github.com/akka/akka-meta/blob/master/ComparisonWithOrleans.md
written by Roland Kuhn (jvm Akka lead) and proofread by the orelans team
Bartosz Sypytkowski
@Horusiath
@rogeralsing what do you mean?
Roger Johansson
@rogeralsing
In akka persistence, when a message is serialized, you set up a "Serialization.CurrentTransport=" there was some logic there to get the value to set
Thomas Tomanek
@thomastomanek
hey all. what's the best way of testing that an actor creates another actor when handling a certain message (like creating another actor to make a web request)? I've done it so far by injecting an Expression<Func<MySubActor>> into the parent actors ctor so I can assert that the func is called, but that seems a bit roundabout. Can't find anything in TestKit that could help though...
Bartosz Sypytkowski
@Horusiath
@sadprofessor why do you need that? It looks like an implementation detail, not a part of behavior or business logic.
Thomas Tomanek
@thomastomanek
@Horusiath To assert that child actors are constructed with the correct params. The parent actors sole job is to create business entities on the fly so I wanted tests to make sure they're a) actually being created when necessary, b) being created with the correct params, c) not being recreated if they already exist
@Horusiath happy to consider an alternative though, quite new to actor design
Thomas Tomanek
@thomastomanek
@Aaronontheweb yes familiar, but I can't remember where from. I feel like Greg Young has spoken about it and/or Chris Patterson (MassTransit dude) but can't find any links
Bartosz Sypytkowski
@Horusiath
@sadprofessor IMO, it's good to treat actors as black boxes. In example given input signals passed to actor X, verify the expected output signals have been sent
if your actor system responds with expected result on given request, then how it's implemented is a secondary matter
Bartosz Sypytkowski
@Horusiath
this way, you can still reimplement it without need to changing the tests
Thomas Tomanek
@thomastomanek
@Horusiath yep totally agree with you in general, but in this case the actor doesn't really have any output in terms of messages but you'd still want to verify it's doing what you want (given it's importance). I agree it's best to avoid peering into any classes internal state to validate behavior, but then again it's a rule I break on occasion when necessary
Thomas Tomanek
@thomastomanek
maybe I've missed a concept and have this one master actor doing too much and should get it to send out messages to create the domain objects
Roger Johansson
@rogeralsing
You can do state testing using .TestActorOf then you have access to the ubderlaying actor and its public members
So you could potentially check if the actor has a new child
Using testkit that is
Thomas Tomanek
@thomastomanek
@rogeralsing ah cool I'll take a look thanks
Roger Johansson
@rogeralsing
Using TestActorOf is a little bit different than what we are used to with actors, it will apply a synchronous dispatcher so all Tells are sync/blocking so that you can do state observations... so there are essentially two flavors of testabillity in TestKit, either with messages and Expect* or sync state testing using TestActorOf
Roger Johansson
@rogeralsing
ActorOfAsTestActorRef is the correct method name
in TestKitBase
NeoDarque
@NeoDarque
I’m playing around with Akka.Cluster and have managed to get a cluster router up and running which I can use to send messages to the relevant nodes when they join the cluster. However, I’ve got the configuration of the router working in code only and would like to move it to the hocon-config file. How would I translate the following code to config?
system.ActorOf(Props.Empty.WithRouter(
    new ClusterRouterGroup(
        new RoundRobinGroup("/user/backend"),
        new ClusterRouterGroupSettings(10, false, "backend", ImmutableHashSet.Create("/user/backend"))
    )
));
Weston
@ronnyek
@rogeralsing - interesting comparison... I was trying to build a sort of distributed pool of workers, with the management and error kernel being a bonus. Sounds like orleans is specifically for minimal impact state management of as many grains as possible... not a worker that might awake for a workload and spend a couple minutes working on it, and then perform some notification on completion
Bartosz Sypytkowski
@Horusiath
@ronnyek what is your case specifically?
Weston
@ronnyek
I've effectively got data coming in from different sources, sometimes polled, sometimes pulled, sometimes pushed in.
Ultimately I need to see what of that data a customer is looking for and notify them in the appropriate manner
so it woudlnt be like oh we processed this data, now send notification to 20k users at the same time
it'd be much more specific
I figure if I could have a pool of processors, and a pool of notifiers
because notifiers need to determine best method to notify client, and actually do the notification
I oculd just have a big mq, and a service hosted that just consumes work items off the queue
and notify accordingly, but seems like if the lifecycle of actors in akka made sense, this owuld be much better for being able to scale out resources
we're having a lot more processing consumption, increase resources there
Weston
@ronnyek
am I way off base? I know OF projects that use akka / akka.net, but I dont know what responsibilities akka serves there... or how it helps those projects scale.