Projekt se skládá z:
Le Tobias
Jakub Najman
Adam Schuppler
Le Vanessa
- Clone the repository
- Navigate to the project root directory
- Run 'mvn clean install' in the root directory
- if mvn clean install does not work, try running mvn idea:idea
- viz https://stackoverflow.com/questions/15213923/maven-package-does-not-exist
- Run
docker-compose up
- Run 'npm ci' in the /frontend directory
- Run 'npm run dev' in the /frontend directory
- Start the chat application and any other component you want to use (bear the dependencies of the components in mind)
Požadavek | Použití |
---|---|
Vhodná technologie | Java, Spring Boot, React |
Společná DB | PostgreSQL pro uživatele, MongoDB pro uživatelské detaily, Elasticsearch pro události v chatu |
Cache | @Cacheable (getUserByUserid v UsersService.java) - pro cachování dat o uživatelích |
Messaging princip | Kafka na události v chatu |
Security | Autorizace přes JSON webtoken (viz api gateway) |
Interceptors | Security (viz modul API Gateway) |
REST | Komunikace mezi moduly |
Výběr vhodné architektury | Model driven architecture (viz dokumentace) |
Inicializační postup | Viz výše |
Využití elasticsearch | Ano (ukládání událostí z chatu, ukládání logů) |
Použití alespoň 5 design patternu | -Producer (KafkaChatMessageProducerService), consumer (KafkaChatListenerService), inversion of control (throughout the project - java), dependency injection (throughout the project - java), fasáda (UserEntityDto), proxy (ChatController), ad. |
Za každého člena týmu 2 UC | Ano (viz dokumentace) |