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

Proposal: introduce service graph for internal service management #18

Closed
siennathesane opened this issue Jun 9, 2023 · 2 comments · Fixed by #20 or #54
Closed

Proposal: introduce service graph for internal service management #18

siennathesane opened this issue Jun 9, 2023 · 2 comments · Fixed by #20 or #54
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed
Milestone

Comments

@siennathesane
Copy link
Owner

Proposal

In order to properly maintain the interconnectivity of the internal processes, a service graph should be introduced to allow for configuration management, dependency resolution, startup, shutdown.

Reasoning

Currently, Pleiades has nearly a dozen internal background processes, singletons, and abstract dependencies that define interconnectivity in the system. These are semi-managed through fx, but fx is not at all the right thing for Pleiades. Not only has it's limitations created non-extensible spaghetti code in server.go, the maintainers aren't interested in a different model, which is totally fine! However, that leaves Pleiades back to the starting line of solving the problem of internal service management.

Spring & .NET have very powerful DI frameworks and ecosystems that allow for not only true dependency injection, but also dependency resolution. I think there are important aspects the service graph should capture and try to emulate for Pleiades.

Acceptance Criteria

Given Pleiades has many interconnected internal processes,
When Pleiades goes to boot,
Then it can properly resolve and instantiate dependencies in the correct order.

@siennathesane siennathesane added enhancement New feature or request help wanted Extra attention is needed labels Jun 9, 2023
@siennathesane siennathesane added this to the 1.0 🎉 milestone Jul 14, 2023
This was referenced Jul 14, 2023
@siennathesane siennathesane self-assigned this Jul 14, 2023
@siennathesane
Copy link
Owner Author

Implemented by #20

@siennathesane
Copy link
Owner Author

After getting through the implementation, I realised my usage of fx was drastically wrong. So I fixed it and I'll get more mileage out of it now.

@siennathesane siennathesane closed this as not planned Won't fix, can't repro, duplicate, stale Jul 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant