Servico de Operacoes
Microservico para receber operacoes financeiras e envia-las a um topico Kafka.
Requisitos
- JDK 8 ou superior
- Clojure
- Kafka
Instalacao
git clone https://github.com/vapordev/operations.git
cd operations
Execucao
Local
clojure -M:run-m
# Porta especifica
PORT=8080 clojure -M:run-m
Com Docker Compose
docker-compose up -d
# Parar
docker-compose down
JAR
clojure -T:build ci
# Executar
java -jar target/operations-0.1.0-SNAPSHOT.jar
Servicos disponiveis
| Servico | Porta | Descricao |
|---|---|---|
| Aplicacao | 3000 | API de operacoes |
| Kafka UI | 8080 | Interface web para Kafka |
| Kafka | 9092, 29092 | Broker Kafka |
| Zookeeper | 2181 | Coordenacao do Kafka |
API
POST /operations
Recebe operacoes financeiras para processamento.
-H "Content-Type: application/json" \
-d '[{"operation":"buy", "unit-cost":10.00, "quantity": 100},
{"operation":"sell", "unit-cost":15.00, "quantity": 50}]'
GET /health
Verifica o status da aplicacao e conexao com Kafka.
Acessando eventos via Kafka UI
Alem da API, voce tambem pode acessar os eventos enviados atraves da interface grafica do Kafka UI:
Acesse a interface web do Kafka UI em http://localhost:8080
Desenvolvimento
clojure -M:test -m cognitect.test-runner
Licenca
Copyright (c) 2025 Vapordev Eclipse Public License versao 1.0.