Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 17:21
    Aaronontheweb synchronize #4079
  • 17:20
    Aaronontheweb labeled #4084
  • 17:20
    Aaronontheweb labeled #4084
  • 17:20
    Aaronontheweb milestoned #4084
  • 17:20

    Aaronontheweb on dev

    Remove string interpolation fro… (compare)

  • 17:20
    Aaronontheweb closed #4084
  • 17:20
    Aaronontheweb commented #4084
  • 15:43
    ismaelhamed opened #4084
  • Dec 04 23:34

    Aaronontheweb on dev

    Made cleanup call thread-safe (… (compare)

  • Dec 04 23:34
    Aaronontheweb closed #4081
  • Dec 04 23:34
    Aaronontheweb closed #4020
  • Dec 04 19:08
    Aaronontheweb commented #4079
  • Dec 04 18:35
    maratoss review_requested #4079
  • Dec 04 18:26
    maratoss synchronize #4079
  • Dec 04 07:42
    jiyeongj edited #4083
  • Dec 04 06:45
    jiyeongj opened #4083
  • Dec 04 06:35
    dependabot-preview[bot] labeled #130
  • Dec 04 06:35
    dependabot-preview[bot] opened #130
  • Dec 04 06:35

    dependabot-preview[bot] on nuget

    Bump System.Data.SqlClient from… (compare)

  • Dec 03 19:10
    Aaronontheweb synchronize #4081
Zied
@zimayel_gitlab
Hello, can maybe someone Confirm that the first example releated to this: https://getakka.net/articles/intro/use-case-and-deployment-scenarios.html using FluentConfig is absolete and have to be updated ?
joowon
@HIPERCUBE
image.png
How can i configure hyperion serialization?
I followed getakka.net serialization document, but it doesn't work.
image.png
As you can see, matched serializer is still NewtonSoftJsonSerializer
Jack Wild
@jackowild
does anybody know if it is possible to check if all actors in an actor system have an empty mailbox?
Bartosz Sypytkowski
@Horusiath
@HIPERCUBE how are you attaching this HOCON config to your actor system? (Also: are you using .net core or full framework?)
Chris G. Stevens
@cgstevens
I do want to give a shout out to the Akk.Net team. You all have done an amazing job.
I've been using Akka.Net for over 3 years and just really enjoy working with Actors, messaging and SignalR.
Here is my latest creation - https://github.com/cgstevens/FileProcessor
Aaron Stannard
@Aaronontheweb
@cgstevens wow! that is really cool
and this can work simultaneously across multiple machines?
Chris G. Stevens
@cgstevens
image.png
@Aaronontheweb Thanks Aaron!
Well I have only been working on my system but I did run a quick test and my work was in a different domain as well as a copy of my WindowsMonitor, so yes to answer your question :)
I am trying to get a project together that demonstrates all of the AWESOME tools you all have built.
So right now in the solution contains the following services:
Lighthouse - service discovery
Processor (EastCoast/WestCoast) - This is to simulate the Singleton Actor, there can only be one just like highlander :) Basically keeps track of jobs.
Worker (EastCoast/WestCoast) - This demonstrates the ClusterRouterPool and distributes the reading of a line.
WIndowsMonitor - WindowsForms application that allows you to view into the cluster... (just like my other I have created)
WebMonitor - This is using SignalR to funnel message from an actor which is using PubSub Mediator to subscribe to Topics from the Processor and Worker services.
Chris G. Stevens
@cgstevens
If anyone would love to clone my project and make sure it works that would be awesome; LOL :)
You know.. famous last words... works on my box!
Chris G. Stevens
@cgstevens
Ohhhh if you want to run across multiple systems you will need to change the 127.0.0.1 ipaddress in the hocon config to the host ipaddress.
You will need to do this with all members of the cluster so that they know how to talk to each other.
Aaron Stannard
@Aaronontheweb
@jackowild you'd need to write some custom code for that - using wildcard actor selections and a custom message type
@zimayel_gitlab yes, that's correct
we haven't supported that syntax in years
Ilya Komendantov
@IlyaKomendantov_twitter

Hey guys,
I have data duplication issue when using TCP. I'm sending from "for" loop on client and reply with the same message from akka (echo).
If the message size 15 bytes + 4 for length, everything is perfect (sent 20k messages that is arrived in order and no duplication).
If message size more than that, duplications arrived. The pattern here is 1,2,3,4,2,3,4,5,6,7,8,2,3,4,5,6,7,8,9,10, ... (not always)
From my investigation the issue caused by

  1. <NetworkStream>.WriteAsync(packet, 0, packet.Length).ConfigureAwait(false) on client
    or
  2. <Tcp.Received>.Data.ToArray() on server (akka)

I have a repro project and will send to anyone who volunteers for investigation :)

Alex Michel
@amichel
Hi, is there an easy way to get count of actors my actor is currently watching? FullActorState is internal class and doesn't expose _watching.Count?
joowon
@HIPERCUBE
@IlyaKomendantov_twitter Can you share the reproduce repo?
Ilya Komendantov
@IlyaKomendantov_twitter
Ilya Komendantov
@IlyaKomendantov_twitter
@HIPERCUBE I've also captured traffic it shows that client sent 10 messages and got 22 in the reply https://drive.google.com/open?id=1KYSKINzPWPoyUuK5BWHR8PeXQPg7Z-iz
remark: this is a localhost
Jan Schoeman
@oofpez
Hi! I'm looking into options for telemetry and monitoring so I can find bottlenecks.
seeing a lot of stuff for JVM Akka but not so much for AKKA.NET.
joowon
@HIPERCUBE
I really want to know that too :)
Phobos is a monitoring and tracing integration for Akka.Net build by @Aaronontheweb
the JVM has the advantage of using AOP like things to weave that stuff into your actors. .NET does not has that advantage
senzacionale
@senzacionale

I also have a problem
Message='akka.actor.provider' is not a valid type name : 'Akka.Cluster.ClusterActorRefProvider, Akka.Cluster'

my hocon config file:

akka {

stdout-loglevel = DEBUG
loglevel = DEBUG
loggers=["Akka.Logger.Serilog.SerilogLogger, Akka.Logger.Serilog"]
log-config-on-start = on  

actor {
    provider = "cluster"
}

remote {
    dot-netty.tcp {
            hostname = "127.0.0.1"
            port = 8081
            maximum-frame-size = 256000b
        }
}            

cluster {
    seed-nodes = ["akka.tcp://tradex@127.0.0.1:4053"] # address of seed node
    roles = ["ordersync", "logger"] # roles this member is in
    role.["ordersync"].min-nr-of-members = 3 # crawler role minimum node count

    # auto downing is NOT safe for production deployments.
    # you may want to use it during development, read more about it in the docs.
    #
    # auto-down-unreachable-after = 10s
}

}

Bartosz Sypytkowski
@Horusiath
@senzacionale do you have Akka.Cluster dependency in you project (it's separate nuget package). Also sometimes people are calling their project the same names, as akka packages are named, causing namespace clashes: make sure it's not your case ;)
Peter Huang
@ptjhuang
Would this be of any interest to anyone for akka.net contrib? https://doc.akka.io/docs/akka/2.5.9/actor-discovery-typed.html
Maciek Misztal
@mmisztal1980
Hey guys, can anyone tell me how many fallbacks does the config support? I've just tried to assemble my config from a parsed Config + 2 fallbacks, when the ActorSystem was created, It didn't contain all of the configs I've chained via the .WithFallback
Jorge Candeias
@JorgeCandeias
I’m not aware of limits, but on one project we have about eight fallbacks and they work fine. The one occasion where they weren’t working and I was scratching my head was because of a hard to spot typo in the hocon text.
Mike Bridge
@mikebridge
I have a WebApi app that is running in an Azure App Service and I was about to try to get it to communicate back and forth with a remote actor system running on a VM. However, I don't think I can open up a port on the App Service that the remote actor system can communicate with. If I understand correctly, attaching to a vnet will only give my WebApi app access to the things in the VNet, but not vice-versa. Do I need to move the webapp to an App Service Environment or is there a better way of accomplishing this?
Shukhrat Nekbaev
@snekbaev
heh, similar question to @mikebridge. I've been using remoting on Azure with WebApps (not ASE) since the end of September. Occasionally messages were not received back from the VM, but VM always got them. In general, WebApp restart seemed to be the way to address it. Recently it's been happening more frequently. Not sure if it has anything to do with an upgrade to 4.7.2 and/or latest Akka+dependencies. I do use VNET. When I start WebApps first and then the windows service on the VM - everything is fine. It can last for days. Basically it seems to pair webapp -> VM and keeps it like that. However, when I restart the WebApp I see "connection was reset by peer" on the VM and then when WebApp is started and the message is sent then I see the debug text in the VM's service: attempt to associate WebApp -> VM, which seems to pass, then it receives the message, processes it and tries to reply. And this fails because at this moment VM's service tries to pair back to the WebApp and I get a warning that remote is not accessible and it is gated etc. etc. What's interesting is that it doesn't happen in the happy path start-up order, but does if WebApp is restarted (at least). BTW, happy path works well in the scale-out scenario too. Is there a way to configure VM's service to not try to pair back on connection resets? :) I understand that's against the peer-to-peer nature of Akka where both endpoints should be reachable... However, ASE is not an option and given that it already works half-way... maybe there's some tweak? :) Or is this trully the case (as per docs) for a custom low-level Akka I/O approach? @Horusiath, @Aaronontheweb what do you guys think?
Mike Bridge
@mikebridge
@mikebridge In my particular case my webapp's communication with the remote actorsystem is only ever one-way. My best guess is that a better solution is to get rid of Akka.Net in WebApi and rewrite the remote actor system as a Rest API that uses Akka.Net internally. ASE looks like overkill for this system, and redeploying in a VM isn't difficult but seems like a hassle just to open a port in WebApi that isn't receiving any messages anyway. (It would be too bad, because the remote actor works great in all my internal deployment scenarios.)
Peter Huang
@ptjhuang
If we want to implement Akka.Monitoring AND establish tenant/user context AND do some authorisation checks based on message header, what's a good way to do it without multiple inheritance and traits, and with much of these infrastructural needs requiring access to lifecycle overrides of the Actor. I'm thinking of a ReceiveActor derived class (e.g. AspectReceiveActor) that provides extension points to an ordered list of "aspects" to be executed AroundXYZ. The aspect list is populated by the derived class of AspectReceiveActor in its constructor. Any other better ideas?
Shukhrat Nekbaev
@snekbaev
@mikebridge the reason I used VNET pairing - wanted all Akka traffic to be completely internal. Yes, it costs ~23 EUR, but not nearly as much as ASE :)
(and yeah, the port part too)
ryzam
@ryzam
Does anyone have experience deploy akka cluster in Azure Kubernetes Services?
Havret
@Havret
Is there any way to enrich PersistentFSM with AtLeastOnceDelivery capabilities?
Havret
@Havret
@snekbaev I believe it's because one of your services in being quarantined. Akka Remoting is not design to deal with network partitioning.
Shukhrat Nekbaev
@snekbaev
@Havret I don't see quarantine related messages in the console output, only gating for 5s and disassociation due to VM being unable to reach the WebApp. After 5 second WebApp can send another mesage and it will be received and processed, but reply will fail and this behaviour seems to remain until I restart the VM service. In this case association is created from WebApp -> VM. And VM's Akka doens't seem to require to associate back. However, if I restart the WebApp and VM's service sees it (via connection was reset by peer info log message) and try to reconnect, then it associates WebApp -> VM successfully, but at this moment VM's service Akka decides to also associate from itself back to WebApp and this fails which causes disassociation and 5s gating
Onur Gumus
@OnurGumus
@Horusiath , with akkling can we use object as the message type safely? Because doing so with persistent actor causes all messages such as ReplaySucceeded to come to actor as well. Perhaps the order should be changed for intercepting the messages.
Bartosz Sypytkowski
@Horusiath
@OnurGumus yes, you can use IActorRef<obj>, but then you'll catch any obj matching signature, including system messages sent to an actor. There's no easy way to just filter them out. Once I'll be done with porting akka-typed, then this will be much easier and consistent to do.
Zetanova
@Zetanova
hi, Why does the IPersistenceIdsQuery.PersistenceIds() not provide any filtering or offset logic? I cant find any other method to resume a query, beside the method with the EventsByTag + Offset. Is the regular why realy to save every LastSeqNr for each PeristenceId in a projection?