Loading repository data…
Loading repository data…
fernando-ss-soares / repository
Este é um projeto de API robusta e escalável desenvolvida com Bun e TypeScript, focada em alta performance e facilidade de manutenção.
Este é um projeto de API robusta e escalável desenvolvida com Bun e TypeScript, focada em alta performance e facilidade de manutenção. A aplicação utiliza Prisma ORM para interação com o banco de dados, Redis para otimização de performance e cache, e inclui uma suíte de testes de carga com k6.
Clone o repositório:
git clone https://github.com/seu-usuario/scalable-bun-prisma-redis-api.git
cd scalable-bun-prisma-redis-api
Instale as dependências:
bun install
Configuração do Ambiente:
Crie um arquivo .env na raiz do projeto e configure a conexão com o banco de dados e outras variáveis necessárias:
DATABASE_URL="mysql://usuario:senha@localhost:3306/nome_do_banco"
REDIS_HOST="localhost"
REDIS_PORT=6379
Nota: O projeto está configurado para utilizar o Redis na porta padrão (6379) e não requer autenticação.
Migrações do Banco de Dados: Execute o Prisma para preparar o banco de dados:
bunx prisma migrate dev
Para rodar o servidor em ambiente de desenvolvimento:
bun dev
O projeto conta com um script de teste de carga localizado em k6/performance-test.js. Ele simula múltiplos usuários simultâneos no endpoint de criação de produtos (POST /products).
Para executar os testes de performance:
k6 run k6/performance-test.js
Você pode visualizar e gerenciar os dados facilmente utilizando o Prisma Studio:
npx prisma studio