Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
Repo info
  • Mar 10 2020 11:24
    Build #1004 passed
  • Mar 07 2020 13:31
    Build #996 passed
  • Mar 07 2020 09:56
    Build #985 passed
  • Mar 07 2020 09:50
    Build #984 passed
  • Mar 07 2020 09:00
    Build #982 passed
  • Mar 07 2020 08:51
    Build #981 passed
  • Feb 27 2020 17:18
    Build #979 passed
  • Feb 23 2020 18:31
    Build #978 passed
  • Jan 10 2020 22:49
    Build #973 passed
  • Jan 10 2020 21:56
    Build #972 passed
  • Dec 27 2019 00:57
    Build #971 passed
  • Dec 09 2019 02:56
    Build #970 passed
  • Dec 09 2019 02:52
    Build #969 passed
  • Dec 06 2019 05:05
    Build #968 passed
  • Nov 19 2019 21:14
    Build #966 passed
  • Nov 19 2019 06:43
    Build #965 passed
  • Nov 19 2019 06:38
    Build #964 passed
  • Nov 18 2019 06:26
    Build #963 passed
  • Nov 02 2019 19:12
    Build #962 passed
  • Sep 18 2019 05:12
    Build #961 passed
Roger Johansson
Hi all I just happened to hit this project. really impressed
Roger Johansson
Nice work. Is it compatible with existing cluster-consul-provider? I'm working for a cluster-etcd-provider of protoactor-go, it's inspired by cluster-consul-provider.
Roger Johansson
@cupen It is conceptually the same, but some rewrites to handle some scenarios better. will bring these changes to Go also
Steve Hayles
Great library all round, I'm using the dotnet version and looking at the developments in grpc-dotnet I was wondering of the core developers had any thoughts on moving from the native wrapper version of grpc to grpc-dotnet ? This hints at some potential performance gains https://twitter.com/JamesNK/status/1290411721660592128
@rogeralsing thx, I got it.
I found some examples of protoactor-go was broken. The import path was wrong https://github.com/AsynkronIT/protoactor-go/blob/dev/_examples/chat/server/main.go#L8.
I'll make a pr for it, if no one do the same thing.
Some examples got broken just because the import path was wrong, but there a one is because unknown reason, here is it. https://github.com/AsynkronIT/protoactor-go/tree/dev/_examples/remotessl
I make a pr for it. AsynkronIT/protoactor-go#395
Hi there.
Long time no see but I have to dive in again within Proto.Actor stack, and just hit the Documentation & Bootcamp sections.
I would like to thanks @rogeralsing & the Proto.Actor community for this impressive work.
I discovered Proto.Actor 2 years ago, and at this time, it was not so newcomers-friendly ;), mainly due to lack of documentation.
Congratulations to everyone involved & keep up the good work. Impressive. Really.
Hi there, just found that AsynkronIT/protoactor-dotnet#542 within Proto.Remote.
Is it a known issue?
Roger Johansson
We havent been able to replicate these issues
Some news on progress for .NET Cluster https://twitter.com/ProtoActor/status/1312037367189065729
Иван Сердюк

Hi. Could someone explain why I am getting this bug:

protoactor-go/_examples/spawnbenchmark$ ./spawnbenchmark
panic: interface conversion: interface {} is nil, not int

goroutine 1 [running]:


Here is what I am using:

$ go env && go version
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build860404574=/tmp/go-build -gno-record-gcc-switches -funwind-tables"
go version go1.15.2 gollvm LLVM 12.0.0git linux/amd64

$ cd  ../protoactor-go/_examples/spawnbenchmark
$ go run main.go
go: downloading github.com/Workiva/go-datastructures v1.0.50
go: downloading github.com/emirpasic/gods v1.12.0
go: downloading github.com/gogo/protobuf v1.3.1
go: downloading github.com/orcaman/concurrent-map v0.0.0-20190107190726-7ed82d9cb717
Result: 499999500000 in 1694 ms.
$ go version
go version go1.15.2 linux/amd64
Иван Сердюк
@ianlancetaylor, did you new about this issue?
Ryan M.
This is such an awesome project. Will the Go version ever get as much love as the .NET one? There are so many PR's open...
How to reload protoactor cluster with zero down time?
I meaning move grain from old node to new node without losing states.
My issue is here. AsynkronIT/protoactor-go#404
Valeriy Dubrava
Hello everybody! Does somebody know, when Proto.Cluster will be available for Kotlin implementation?
Arsene Tochemey Gandote
Hello folks. I would like to know whether there is a very elaborated tutorial in golang on how to implement an event sourcing behaviour. I have glanced through the doc and the example show very little in that regard.
Roger Johansson

Moving all action over here now:

Just cannot keep up with too many different chat apps here

Hi, just joined the forum, newbie in proto actor, a quick question: in proto actor, there is no actor path anymore (comparing to akka.net) then how to find the actors? or you have to know PID of an actor to interact with it?
Just found the basecamp https://github.com/AsynkronIT/protoactor-bootcamp looks like a great learning resource but was wondering if anybody knows where the code for this is?
Milosz Krajewski
@zhenlee-lt (disclaimer: I know nothing, I'm just exploring, like you). Seems like one way is with Clusters (RegisterKind, GetAsync), but if you are using only local actor system (no Remote, no Cluster) I actually found it hard to find actor by name. I don't think this is the way to do it, but it works for me:
If actor was spawned with context.SpawnNamed then you can find it with:
public static PID GetNamed(this IInfoContext context, string name)
    var pid = new PID("nonhost", name);
    _ = context.System.ProcessRegistry.Get(pid);
    return pid;
@rogeralsing @zhenlee-lt this most likely NOT the way to do it though

I'm getting the following error

2020/11/27 03:47:20 [REMOTE] Started EndpointWriter address="" 
2020/11/27 03:47:20 [REMOTE] EndpointWriter connecting address="" 
2020/11/27 03:47:20 [REMOTE] EndpointWriter failed to connect address="" error="rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = \"transport: Error while dialing dial tcp connect: connection refused\"" 
2020/11/27 03:47:20 [REMOTE] EndpointWriter failed to connect address="" error="rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = \"transport: Error while dialing dial tcp connect: connection refused\""

What I did was :

  • Created a protoactor node on port 8091 (with a registered grain type A on it)
  • Created a protoactor node on port 8092 (with a registered grain type A on it)
  • Created a protoactor node on port 8090 (which creates 1000 grains of type A, 501 got created on 8091 and 499 on 8092)
  • Now I closed node 8091, and tried operating in the same 1000 grains again. A few grains got created on the still up node 8092 but 8090 (node operating with grains) stopped all of a sudden with get PID failed with StatusCode: 2
  • And 8092 is now continuously sending the error described very above

Now, I'm not able to understand why did get Pid failed, shouldn't it have known that the node is down and created the entity again. Another thing I didn't understand is why is 8092 still trying to reach to 8090 infinitely?

I would be really grateful if someone can help me


Is there any way to wait for a message to complete without returning a value? Right now I'm just returning a bool and waiting for it, but it's getting quite annoying to write, I just want to run certain messages that modify the state on a sync way

Roger Johansson
Tim Adamson
Hi Roger, thanks for the link to your Slack. It seems however that it requires an @asynkron.se email address?
Roger Johansson
No, anyone can join there
1 reply
Tim Adamson
Unfortunately not "The email address must match one of the domains listed below. Please try another email."
"Don’t have an @asynkron.se email address?
Contact the workspace administrator at Asynkron for an invitation."
Tim Adamson
apparently we have to regenerate the invite link every 30 days
miroslav krsjak
morning, why is the protractor python repo archived?
Chris Shim
morning, why is the protractor python repo archived?
Roger Johansson
There were no maintainers working on it