https://github.com/santosjennifer/microservices-ecommerce
Serviços naming-server, gateway-server, ms-authentication, ms-order, ms-product, ms-customer e ms-mail
https://github.com/santosjennifer/microservices-ecommerce
java jwt-authentication kafka spring-boot spring-cloud spring-mail spring-security
Last synced: about 2 months ago
JSON representation
Serviços naming-server, gateway-server, ms-authentication, ms-order, ms-product, ms-customer e ms-mail
- Host: GitHub
- URL: https://github.com/santosjennifer/microservices-ecommerce
- Owner: santosjennifer
- Created: 2024-05-04T16:40:45.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-16T23:46:31.000Z (almost 2 years ago)
- Last Synced: 2025-06-05T04:43:39.295Z (about 1 year ago)
- Topics: java, jwt-authentication, kafka, spring-boot, spring-cloud, spring-mail, spring-security
- Language: Java
- Homepage:
- Size: 104 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

[](https://github.com/santosjennifer/microservices-ecommerce/actions/workflows/docker-publish.yml)
## E-commerce
Responsável por cadastrar produtos, categorias e clientes. Gerando pedidos e enviando e-mail de notificação para os clientes, simulando um e-commerce.
### Serviços naming-server, gateway-server, ms-authentication, ms-order, ms-product, ms-customer e ms-mail:
- **naming-server:** responsável por registrar e gerenciar a comunicação dos demais microserviços utilizando o spring eureka.
- **gateway-server:** responsável gerenciar as rotas do API Gateway, utilizando o spring security para autenticação JWT nessas rotas.
- **ms-authentication:** responsável por cadastrar os usuários e autenticar utilizando autenticação JWT.
- **ms-order:** responsável criar os pedidos, integrando com os ms de customer e product. Publica eventos em um tópico Kafka solicitando o envio de e-mails com os dados do pedido.
- **ms-customer:** responsável cadastrar e retornar os clientes e endereços.
- **ms-product:** responsável por cadastrar e retornar os produtos e categorias.
- **ms-mail:** responsável consumir os eventos no tópico do Kafka e enviar os e-mails para os clientes com os dados do pedido.
### Tecnologia
- Java 21
- Maven
- Spring Boot 3.2.5
- Spring Security
- Apache Kafka
- PostgreSQL
### Como executar o projeto:
1 - Clone o repositório:
```
git clone git@github.com:santosjennifer/microservices-ecommerce.git
```
2 - Na raiz do projeto, execute o comando:
```
docker-compose up
```
### Links Úteis
- Eureka Server:
```
http://localhost:8761
```

- Swagger Authentication API:
```
http://localhost:8004/swagger-ui/index.html#/
```

- Swagger Order API:
```
http://localhost:8003/swagger-ui/index.html#/
```

- Swagger Customer API:
```
http://localhost:8002/swagger-ui/index.html#/
```

- Swagger Product and Category API:
```
http://localhost:8001/swagger-ui/index.html#/
```
