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

Remove inter-service dependencies for better separation of concerns #2

Open
Snehil-Shah opened this issue May 20, 2024 · 0 comments
Open
Labels
enhancement New feature or request wontfix This will not be worked on

Comments

@Snehil-Shah
Copy link
Owner

Snehil-Shah commented May 20, 2024

Problem

Some design choices didn't end up as planned. We currently use a multithreaded Java interface to initialize and run our consumer clients. This design defeats the purpose of using a microservices architecture.

Currently the email service is set up on the same interface as the user facing logger, which means the Java interface needs to be running on both the server and client side, which is a fallacy!
Current architecture fails to account for distribution and scalability.

Outcome

Each consumer microservice should ONLY depend on Kafka as the single source of truth. Each consumer should be independent of each other.

This will require a long bit of engineering time for all the refactoring and for a personal project, I think the current implementation is good enough to show a small microservices architecture facilitated by Kafka. Hence, for the moment, there are no plans to fix this

@Snehil-Shah Snehil-Shah added enhancement New feature or request wontfix This will not be worked on labels May 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

1 participant