java-backend/README.md
2025-12-04 00:18:33 -03:00

3.5 KiB

Create System Help Desk 2

image

Visão Geral

O projeto "Formação Backend Expert" tem como objetivo fornecer uma formação completa para desenvolvedores backend, focando em uma arquitetura de microsserviços utilizando tecnologias modernas e práticas avançadas de desenvolvimento. Este repositório contém o código-fonte e os componentes desenvolvidos durante o curso.

Tecnologias Utilizadas

  • Spring Boot: Framework Java para criação de aplicações web e microsserviços.
  • Spring Cloud: Conjunto de ferramentas para construir sistemas distribuídos.
  • Spring Security: Framework de autenticação e autorização.
  • JWT (JSON Web Tokens): Para autenticação e autorização segura.
  • RabbitMQ: Sistema de mensageria para comunicação assíncrona.
  • MongoDB Atlas: Serviço de banco de dados NoSQL gerenciado.
  • Amazon RDS: Serviço de banco de dados relacional gerenciado.
  • Docker: Plataforma para criação e gerenciamento de contêineres.
  • GitHub: Plataforma de hospedagem de código e controle de versão.

Estrutura do Projeto

Componentes Principais

  1. API Gateway: Gerencia todas as requisições para os microsserviços.
  2. Config Server: Armazena e distribui configurações centralizadas.
  3. Service Discovery: Localiza e registra instâncias de serviço dinamicamente.
  4. Auth Service API: Gerencia tokens de acesso e autenticação de usuários.
  5. Commons Lib: Biblioteca compartilhada entre os microsserviços.
  6. Email Service: Envia e-mails utilizando RabbitMQ para gerenciamento de filas.
  7. User Service API: Gerencia informações de usuários.
  8. Order Service API: Gerencia ordens de serviço.

Funcionalidades

  • Autenticação e Autorização: Utilizando Spring Security e JWT.
  • Balanceamento de Carga: Distribuição automática de solicitações entre serviços.
  • Configurações Centralizadas: Atualização dinâmica de configurações em tempo de execução.
  • Mensageria: Comunicação assíncrona com RabbitMQ.
  • Integração Contínua: Utilizando GitHub e Docker para versionamento e implantação.

Instalação

Pré-requisitos

Iniciando o Projeto com Gradle

  1. Clone este repositório.
  2. Navegue até o diretório do projeto.
  3. Execute ./gradlew build para compilar o projeto.
  4. Execute ./gradlew run para iniciar o servidor.

Importando a Coleção do Postman

  1. Baixe a coleção do Postman.
  2. Abra o aplicativo Postman.
  3. Clique em "Importar".
  4. Selecione o arquivo da coleção baixado.
  5. Siga as instruções para importar a coleção.

Contribuição

  1. Fork o projeto.
  2. Crie uma branch para sua feature (git checkout -b feature/nova-feature).
  3. Commit suas mudanças (git commit -am 'Adiciona nova feature').
  4. Push para a branch (git push origin feature/nova-feature).
  5. Abra um Pull Request.

Licença

Este projeto está licenciado sob a MIT License.