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

feature flags to disable/enable services #92

Closed
hackaugusto opened this issue Dec 9, 2023 · 2 comments · Fixed by #323
Closed

feature flags to disable/enable services #92

hackaugusto opened this issue Dec 9, 2023 · 2 comments · Fixed by #323
Milestone

Comments

@hackaugusto
Copy link
Contributor

hackaugusto commented Dec 9, 2023

we have implemented a node binary, that runs all 3 services (rpc, block_producer, and store) in the same process. this simplifies a lot of things including stdin/stdout/stderr, process management, shutdown, testing.

now that we have a single binary, we can add flags or subcommands to control which services are executed, e.g. miden-node services run, miden-node store run, miden-store rpc run.

This approach simplifies a few things:

  • deployment, specially with static linking since a single binary can be copied to multiple machines, and only the process management config need to change to choose which service is executed.
  • compilation, since we don't have to compile 3 binaries, but a single one, we should get a small speed up
  • testing, since we no longer have to add infrastructure to build and test multiple binaries
  • user onboarding, we can do releases of a single binary per platform, and an operator can just download that to do testing
@plafer
Copy link
Contributor

plafer commented Dec 11, 2023

Relating to #100, this means that we only ever need just one config file. If someone wants to run e.g. only the store, then they only need to have the [store] header in their config.

@bobbinth
Copy link
Contributor

Closed by #323.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

4 participants