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

How would you break this structure in two micro-service if needed later #77

Open
rajorpratyush opened this issue Jul 18, 2020 · 4 comments

Comments

@rajorpratyush
Copy link

If i go through this structuring pattern , it seems to me that breaking this into say 2 micro-service would be very difficult. How would you go about this problem ?

@santiq
Copy link
Owner

santiq commented Jul 23, 2020

Why would it be difficult?
Just use two servers with his pattern, try to separate your app by domain concern, like in one server have the Authentication Service (user database) and in another have the other models (i.e products on an e-commerce app)

@SamsadSajid
Copy link

@santiq say I've also got an order service which is a separate microservice. And in the order service, I need to know which user is ordering, and therefore I might need the user model. In this scenario don't I have to write the same User Model, schema in the order-service which I also wrote in the Auth service?

And therefore with this approach am I not keeping duplicate code in my whole eco-system? Or this is the usual approach?

@barakcodes
Copy link

This is rather a microservice design problem, but in this case, you might use the user id to identify your users and communicate with the auth service when needed to get user information. You could also store the user information in a jwt and share the public key. You should do more research on how to build microservices and how to handle data between services.

@SamsadSajid
Copy link

@barakcodes thanks. I think getting user information should not be part of the order service rather a user service or auth service. With the userId from jwt a REST/gRPC call will be made to the auth service which may return the user's info.

But yes, of course, it's a micro-service design problem.

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

No branches or pull requests

4 participants