asynkron / protoactor-go

Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
http://proto.actor
Apache License 2.0
5.08k stars 522 forks source link

Purpose of spawn actor in random activator but not local activator. #163

Closed killgxlin closed 7 years ago

killgxlin commented 7 years ago

Hello: Guys. https://github.com/AsynkronIT/protoactor-go/blob/dev/cluster/partition_actor.go#L83 Why not in the same actor of partitionActor? Thanks for the powerful project.

killgxlin commented 7 years ago

I will follow the process of "Contributing to Proto.Actor"

killgxlin commented 7 years ago

Thank @rogeralsing for explaining in gitter.

https://www.infoq.com/br/presentations/failing-gracefully-with-the-actor-model TLDR; the partition owner for a given name might move around when the cluster topology changes, the actor instance will not, thats the reason for the two levels. The "Hash Partitions" in that image might move due to changes. the actors placement (at the bottom, "Grain placement") will be static during it's lifetime. http://proto.actor/images/grains.png