Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Oct 19 23:39
    valdisz synchronize #3889
  • Oct 19 23:08
    edvinasz commented #2947
  • Oct 19 13:36
    Aaronontheweb commented #3973
  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3995
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump BenchmarkDotNet from 0.10.… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] edited #3995
  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3993
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump Google.Protobuf from 3.9.1… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3991
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump Microsoft.Extensions.Depen… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3989
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump ApiApprover from 3.0.1 to … (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3992
  • Oct 19 13:34
    dependabot-preview[bot] edited #3993
  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3985
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump System.Reflection.Emit fro… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3986
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump FsCheck.Xunit from 2.9.0 t… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3983
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump NUnit from 3.6.1 to 3.12.0… (compare)

Arjen Smits
@Danthar
And your right about it being a bug.
PR's are most welcome
We recently moved the plugins out of core repo
CI still needs to be setup. but that will also happen soon.
Dave Sansum
@dave-sansum
Great. Will submit the PR this afternoon. Thanks for teh advice
Carlos Torrecillas
@CarlosTorrecillas
Unfortunately our changes don't seem to be fully working and we are facing issues with the Release method in Ninject and the dependencies aren't being released for some reason. If we get to the bottom of it we will submit the PR
Arjen Smits
@Danthar
:+1:
Justin Merth
@jdmerth
Hi all, when using cluster sharding, how are entities removed from a shard when they're no longer needed?
Maxim Cherednik
@maxcherednik
Hi guys got a q. I know I've already asked similar one, but I didn't quite get the answer.
Here are a few facts:
  1. Cluster is still in beta
  2. There are online courses from the Petabridge about akka.net including Clustering
    So having these 2, I would assume that the cluster module can be used already. Even though it's still in Beta, there could be a limited number of bugs for some edge cases, but it should work in the most cases.
    Is this correct? @Silv3rcircl3 @Danthar @Aaronontheweb
Toshko Andreev
@Ravenheart
hey guys assuming i've got computers behind a NAT
is it at all possible to communicate with them
if say i have a central server thats all good network wise
Maxim Cherednik
@maxcherednik
@Ravenheart if you wish to have a bottleneck, you can. Akka assumes peer-to-peer connection
Toshko Andreev
@Ravenheart
so its out of the box OK
no router actors or anything
(i'm fine with a bottleneck at this point, its an internal hospital network)
Maxim Cherednik
@maxcherednik
Probably you didn't get the whole picture. If you want to have a full blown akka application where all the nodes are communicating with each other, they need to see each other. By the bottleneck I mean, you will need to have a public endpoint which will do the rest - but it's not about akka already...
Kris Schepers
@schepersk
@jdmerth Entities should passivate themselves.. It's rather well documented. An entity should send a Passivate message to its parent, the shard. When you supply a PoisonPill as return message, the entity will stop itself. See the Passivation chaper here: Cluster sharding
And a trigger for passivation could be using the SetReceiveTimeout functionality of an actor..
Steven Harrap
@stevenharrap

Hi there

I want (need) to add a monitoring sub-system to my Akka.net project so that I can do the usual things such as monitoring performance, throughput, detecting bottle necks etc. Reading the docs and much searching leads me to the conclusion that I should use the https://github.com/petabridge/akka-monitoring project and that it provides these monitoring options:

  1. StatsD

    • Requires a linux server and configuration
    • Substantial configuration curve involving the Graphite system.
    • Ongoing up-keep of another system where technical understanding is limited
  2. Microsoft AppInsights

    • Online service which may be free or cheap for some amount of time
    • Could be quick to get going if my Azure subscription worked.
  3. Performance Counters

    • Heavy reliance on the current machine with minimal reporting functionality to a web interface
    • More learning curve and implementation if there is some reporting method.

All these systems are not to friendly to a debug environment where I can start a system, throw data at it and watch the results. I understand that my production environment would have a permanent monitoring system. In regard to monitoring this is what I'm looking for:

  • Completely self contained in regards to debug: start.monitor.stop and be secure that all trace of that system is gone upon stopping.
  • Minimum upkeep of the monitoring system. Configure graphs against available metrics and go.

Does anyone have any links, advice etc that could help me out?

Thanks,
Steven.

Justin Merth
@jdmerth
@schepersk thanks for the quick reply. I set up some monitoring and discovered it is exactly as you say. When I passivate an entity the CurrentShardRegionState response reports the correct number of entities for that region. It would be helpful to know how many entities are present within the cluster, I thought that GetClusterShardingStats would provide that, but I don't get a response message of ClusterShardingStats when sending that to a shard region. Any insight would be appreciated!
Justin Merth
@jdmerth
@stevenharrap in terms of performance monitoring, I have found that Sumo Logic's collectors are useful. You'll need to install the collector on the server, but after doing so you'll have a great deal of control over what you log. I discovered this when experimenting with Azure Service Fabric's performance counters. I had trouble collecting anything useful from Operational Insights, but the Sumo Logic setup was a breeze. Let me know if you move that direction and I can give you a bit more guidance on how I set it up.
Steven Harrap
@stevenharrap
Thanks @jdmerth. Sumo looks like an experience similar to Azure. I gather that there is a component that is installed into server, configured in the .config/code and referenced in the Actor classes with the help of some documentation. Can you describe how Sumo works in the debugging experience? Is it possible to separate debug results from production results.
Justin Merth
@jdmerth
There are a few different approaches. Since I'm running on a virtual machine scale set that I can define, I prefer to install the sumo logic collector on to the VM directly. That way I get all of the benefits of their client, then I log everything to a known location (e.g. d:/logs/out.log) that is configured in the collector. I use NLog and SlowCheetah tranforms to have a different nlog.config for release and debug. You can do the same for ApplicationInsights.config. Another approach is to use the network target, which I sometimes use for local development. I'm just starting to work with the Akka-Monitoring solution which looks very promising for sending App. Insights events. Let me know if you'd like some samples and i'd be happy to provide.
Corneliu
@corneliutusnea
Are there alternatives to configuring Akka except HOCON? I find HOCON terribly hard to read and there are no good text editors for it like there are for JSON
Corneliu
@corneliutusnea
answering my own question: the ConfigurationFactory seems to be happy to load pure JSON
Toshko Andreev
@Ravenheart
good day
Toshko Andreev
@Ravenheart
i'm building my first akka project and wanted some design tips
suppose i have an actor that will accept Login and Logout messages
and should then hold a list of all those that have logged in
should i use a pool router
or just go with a normal actor
(i will keep a list of actor paths)
Marc Piechura
@marcpiechura
@Ravenheart use a normal actor with a list inside.
Toshko Andreev
@Ravenheart
alright thanks
hope you don't mind if i ask some other newbish questions later
Marc Piechura
@marcpiechura
nope, all good ;)
Kevin McFarlane
@kevinmcfarlane
I'm having difficulty getting a simple persistence example to work based on the first example in the Petabridge blog post. I'm using SqlServer. I don't get any errors but otoh nothing gets written to the journal and snapshot tables. This is using Akka 1.0.6 with Persistence 1.0.6.17 and Persistence SqlServer 1.0.6.3. I'm on Sql Server 2008 R2, so I don't know whether that's an issue? Can someone take a peek if I post it up to my GitHub, unless they can think of an obvious gotcha to check in the meantime?
Toshko Andreev
@Ravenheart
suppose i'm writing the client side actors
do i have to specify my actor path as if its gonna be remote
like akka.tcp://MySystem@127.0.0.1:1234/user/someActor
or can i specify it like a normal in-app path: akka://MySystem/user/someActor
Dave Sansum
@dave-sansum
I'm currently using a child per entity model and after getting this running locally I'm starting to look into the remoting/clustering elements. In seems the clustering is really geared towards actors that are functional rather than entity based and I'm struggling to any documentation on dynamic systems. What I'm looking to do is have location transparency so if an entity A lives on node A, if node A fails the entity can be brought up seamlessly on node B ? It seems cluster sharding is the right (only) thing for this but it doesn't seem that mature at the moment. Any advice would be much appreciated?
Marc Piechura
@marcpiechura
@Ravenheart you only need the Akka.tcp path if you want to communicate with a remote actor
Toshko Andreev
@Ravenheart
also i've noticed that in some of the tutorials when you override say PostStop() you call the base method
while in some others you don't
do i always call the base method or
Kevin McFarlane
@kevinmcfarlane
@Ravenheart I wondered that as well! But IIRC I think base PostStop() curently does nothing?
Toshko Andreev
@Ravenheart
hello kevin
might i ask how long you've been using akka.net?