pdf: accelerate OCR

Signed-off-by: Rodrigo Bertoldo de Sousa Martins <rodrigo.sousa.577@gmail.com>
This commit is contained in:
rodrigo committed 2026-02-27 20:20:07 -03:00
1 parent db7b832044
commit ab73ea667e
2 files changed
+230 -41

No files matched your search

+17
View File
@@ -28,6 +28,7 @@ import pensaoAlimenticiaRouter from './routes/pensaoAlimenticia'; // Importar ro
import financeiroPainelRoutes from './routes/financeiroPainel'; // Importar rotas do financeiro painel
import audienciasRoutes from './routes/audiencias'; // Importar rotas de audiências
import pdfRoutes from './routes/pdf'; // Importar rotas de PDF
import { PDFService } from '../services/pdfService'; // Importar serviço de PDF para warmup OCR
const app = express();
@@ -1433,9 +1434,25 @@ app.use(
// Aumentar timeout do servidor para operações longas (ex: PDF, OCR)
const server = app.listen(port, () => {
console.log(`🚀 Servidor rodando em http://localhost:${port}`);
// Pré-aquece o worker Tesseract OCR em background (elimina delay na primeira operação)
PDFService.warmupOCR('por').catch(() => {});
});
server.timeout = 600000; // 10 minutos (600 segundos)
// Encerra workers Tesseract ao desligar o servidor
process.on('SIGTERM', async () => {
console.log('Encerrando workers OCR...');
await PDFService.terminateWorkers();
process.exit(0);
});
process.on('SIGINT', async () => {
console.log('Encerrando workers OCR...');
await PDFService.terminateWorkers();
process.exit(0);
});
process.on("unhandledRejection", (err) => {
console.error("Erro não tratado:", err);
});