Microservice architecture - SuQuoc/ft_transcendence GitHub Wiki
Services
The project is seperated into 3 micro services, with each having its own database. Across all the databases the user is identified with uuid.
- Registration
- User-Management
- Game
Registration
Handles the signup, login and authentication. Responsable for creating the JWT, which will be checked to use the other microservices.
User-Management
Handles the users profile information like displayname, avatar picture, friends and online status.
Game
Hanldes the pong game logic, matchmaking- and tournament-system. Provides game statistics.
Sources
General microservice structure to read up on: https://microservices.io/patterns/data/database-per-service.html
Article about django auth with JWT and validation between microservices: https://medium.com/@brunobarreto_24050/an-authentication-pattern-for-microservices-using-django-f19223fc0f4e
Authorization in microservice architecture: https://www.osohq.com/post/microservices-authorization-patterns