Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Location Transparency? #39

Closed
Teun opened this issue Aug 11, 2019 · 3 comments
Closed

Location Transparency? #39

Teun opened this issue Aug 11, 2019 · 3 comments
Labels

Comments

@Teun
Copy link

Teun commented Aug 11, 2019

In frameworks like Akka, the concept of Location Transparency is always stressed a lot. It allows moving actors to another node, which in turn allows for dynamically growing and shrinking a cluster. Also live software updating of framework or application would require this.

Does the comedy team envision implementing something like this? Or is comedy built on a different vision that does not require these concepts?

@weekens
Copy link
Contributor

weekens commented Aug 12, 2019

@Teun , if we talk about parent-child actor communication, then the location transparency is already present in Comedy: you can switch actor modes from in-memory to forked (separate process) or remote (remote machine) together with changing the number of parallel actors (clustering), and in all these cases your code does not change. Comedy guarantees that if you've got an actor reference, it's location transparent.

Akka does however have actor lookup functionality, which is not present in Comedy for the moment.

@Teun
Copy link
Author

Teun commented Aug 12, 2019

Thank you for your response. Yes, I think I understand: you have transparent ActorRef instances. But there is really no way to transparently move instances to another physical location (like another process or machine) without the other actors noticing, right? And it is the creating actor (or its config file) that decides where a child lives. And if this is remote, the creator must know from configuration which other nodes exist.

Do I get that right or am I missing something? And if that is the case, is that intentional (as in: comedy is not trying to do that) or will it be on the road map eventually?

@weekens
Copy link
Contributor

weekens commented Aug 17, 2019

@Teun , actors in Comedy can dynamically change their mode (say, from "in-memory" to "remote") and this change is transparent to actor reference holder. Actor mode can be changed in runtime both programmatically and with configuration modification. See https://github.com/untu/comedy#hot-configuration-change

@Teun Teun closed this as completed Aug 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants