60e69c9ff6
- aula-16: nova aula de canary deployment automatizado com Flagger - aula-14: removido Jaeger (tracing movido para aula-15), corrigido nome do serviço Victoria Metrics, adicionado rate limiting no Kiali - aula-15: adicionado receiver Zipkin no OTel Collector para receber traces do Istio, corrigida porta do Tempo (3100→3200), integração automática com Istio quando detectado - aula-03: corrigido MAX_REQUESTS de 10 para 3 (valor padrão) - CLAUDE.md: adicionada aula-16 na documentação
44 lines
949 B
YAML
44 lines
949 B
YAML
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: app-config
|
|
data:
|
|
MAX_REQUESTS: "3"
|
|
|
|
app.js: |
|
|
const http = require("http");
|
|
|
|
const MAX_REQUESTS = Number(process.env.MAX_REQUESTS || 3);
|
|
|
|
let requestCount = 0;
|
|
|
|
console.log("MAX_REQUESTS =", MAX_REQUESTS);
|
|
|
|
const server = http.createServer((req, res) => {
|
|
if (req.url === "/health") {
|
|
if (requestCount > MAX_REQUESTS) {
|
|
console.log('❌ O health check falhou');
|
|
return;
|
|
}
|
|
|
|
res.writeHead(200);
|
|
res.end(`ok`);
|
|
return;
|
|
}
|
|
|
|
requestCount++;
|
|
console.log("request", requestCount);
|
|
|
|
if (requestCount > MAX_REQUESTS) {
|
|
console.log(`🔥 App travado após ${MAX_REQUESTS} requests`);
|
|
return;
|
|
}
|
|
|
|
res.writeHead(200);
|
|
res.end(`Req -> ${requestCount}/${MAX_REQUESTS}`);
|
|
});
|
|
|
|
server.listen(3000, () => {
|
|
console.log("App rodando na porta 3000");
|
|
});
|