Pular para o conteúdo principal

Topologia e Arquitetura de Microsserviços 🏗️

A plataforma Monvix é composta por três microsserviços principais orquestrados via contêineres Docker e protegidos por proxy reverso com suporte a terminação TLS/SSL automática.


🧭 Visão Geral da Topologia


📦 Detalhamento dos Componentes

1. Front-Monvix (Frontend SPA & PWA)

  • Stack: React 19, TypeScript, Vite, Tailwind CSS 4, Radix UI Primitives, Lucide Icons.
  • Deploy: Imagem Docker leve baseada em nginx:stable-alpine servindo os artefatos estáticos.
  • Capacidades:
    • PWA com suporte a instalação e cache via Service Worker (vite-plugin-pwa).
    • Armazenamento reativo e sincronização com o backend.
    • Validações de formulário síncronas antes do despacho para as APIs.

2. finan-service (Backend Transacional)

  • Stack: Java 21, Quarkus Framework, Hibernate Reactive / Panache, PostgreSQL 16.
  • Porta: 8082.
  • Responsabilidades:
    • Autenticação e autorização JWT.
    • Persistência de contas, transações bancárias e balanços de usuários.
    • Orquestração de chamadas ao microsserviço de GA quando o questionário é alterado.
    • Verificações de saúde SmallRye Health (/q/health).

3. monvix-ga-service (Motor de Inteligência Artificial)

  • Stack: Python 3.11+, FastAPI, Uvicorn, NumPy 2.x, Pydantic v2.
  • Porta: 8084.
  • Responsabilidades:
    • Processamento de matrizes de alocação orçamentária vetorizada.
    • Execução da meta-heurística evolucionária populacional em frações de milissegundos.
    • Geração automatizada de alertas e justificativas contextuais (app/domain/explanations.py).
    • Endpoints /health e /api/ai/optimize-allocations.

4. monvix-proxy (Proxy Reverso & Edge Router)

  • Stack: Caddy v2.8+ Alpine.
  • Portas: 80 (HTTP) e 443 (HTTPS com certificados Let's Encrypt / ACME automáticos).
  • Roteamento:
    • monvix.me e www.monvix.me \rightarrow monvix-web:80
    • api.monvix.me \rightarrow finan-service:8082

👉 Aprofunde-se no Motor Evolucionário do AG →