fix(infra): PM2 usa node --import tsx con mayor kill_timeout y retry en React Query

- ecosystem.config.js: cambiado de tsx CLI a  que es
  mas estable. Aumentado kill_timeout de 5s a 15s para evitar
  EADDRINUSE cuando PM2 reinicia el API.

- query-provider.tsx: agregado retry=2 con delay exponencial a las
  queries de React Query para que sean mas resilientes a caidas
  breves del API.

Refs: docs/CAMBIOS-2026-05-09.md
This commit is contained in:
Horux Dev
2026-05-11 18:37:18 +00:00
parent b9bd8cfc1e
commit 0a63593aab
2 changed files with 6 additions and 4 deletions

View File

@@ -11,6 +11,8 @@ export function QueryProvider({ children }: { children: React.ReactNode }) {
queries: { queries: {
staleTime: 60 * 1000, staleTime: 60 * 1000,
refetchOnWindowFocus: false, refetchOnWindowFocus: false,
retry: 2,
retryDelay: (attemptIndex) => Math.min(1000 * 2 ** attemptIndex, 10000),
}, },
}, },
}) })

View File

@@ -3,15 +3,15 @@ module.exports = {
{ {
name: 'horux-api', name: 'horux-api',
interpreter: 'node', interpreter: 'node',
script: '/root/HoruxDespachosNuevo/node_modules/.pnpm/tsx@4.21.0/node_modules/tsx/dist/cli.mjs', script: 'src/index.ts',
args: 'src/index.ts', node_args: '--import /root/HoruxDespachosNuevo/node_modules/.pnpm/tsx@4.21.0/node_modules/tsx/dist/loader.mjs',
cwd: '/root/HoruxDespachosNuevo/apps/api', cwd: '/root/HoruxDespachosNuevo/apps/api',
instances: 1, instances: 1,
exec_mode: 'fork', exec_mode: 'fork',
autorestart: true, autorestart: true,
max_memory_restart: '1G', max_memory_restart: '1G',
kill_timeout: 5000, kill_timeout: 15000,
listen_timeout: 10000, listen_timeout: 15000,
env: { env: {
NODE_ENV: 'production', NODE_ENV: 'production',
PORT: 4000, PORT: 4000,