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

Convert all start_link calls to use SHA hashes as names, via the Registry "via tuple". #12

Open
upstarter opened this issue Feb 21, 2020 · 0 comments
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@upstarter
Copy link
Owner

upstarter commented Feb 21, 2020

Using atoms as name option in start_link is bad for scalability. Since these are not garbage collected, using them will eventually cause the BEAM to run out of memory. Lets use unique SHA hashes as names using the via tuple contract provided by Registry.

Use unique content hashes for names of nodes and eventually Distributed Hash Tables for resource discovery (like kademlia). SHA hashes provide versioning and avoid name collisions. For example, reusing an action would be unique from another version even though the user used the same module. Two versions of same module can do different things also. Each version runs in separate process. No namespace collisions. One could have thousands of the same module running as processes. This is a very good thing for programming large systems.

@upstarter upstarter created this issue from a note in The Automata Project (To do) Feb 21, 2020
@upstarter upstarter added the good first issue Good for newcomers label Feb 21, 2020
@upstarter upstarter changed the title Add the Registry to (top level?) Supervisor and convert all start_link calls to use the "via tuple". Convert all start_link calls to use SHA hashes the "via tuple". Feb 22, 2020
@upstarter upstarter changed the title Convert all start_link calls to use SHA hashes the "via tuple". Convert all start_link calls to use SHA hashes as names, via the "via tuple". Feb 22, 2020
@upstarter upstarter changed the title Convert all start_link calls to use SHA hashes as names, via the "via tuple". Convert all start_link calls to use SHA hashes as names, via the Registry "via tuple". Feb 22, 2020
@upstarter upstarter added the enhancement New feature or request label Feb 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
Development

No branches or pull requests

1 participant