Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

268
Views
¿Cómo limpiar archivos /tmp después de que la función de la nube envía una respuesta?

Tengo un contenedor de Google Cloud Run que actúa como un servidor express.

Los usuarios finales cargan archivos en un directorio temporal, los proceso y devuelvo un archivo.

Me gustaría limpiar la carga original (y otros archivos intermedios) para que no ocupen memoria.

Pero los documentos dicen que no se garantiza que el código después de la respuesta se ejecute.

Entonces, ¿cómo/dónde elimino los archivos temporales?

He aquí un ejemplo simplificado:

 // process user upload, then: res.download('someFile'); fs.unlinkSync('someFile') // not guaranteed to run; return null;
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Con Cloud Run, puede usar la función CPU siempre ENCENDIDA . No es el más barato, pero está especialmente diseñado para seguir trabajando en segundo plano, incluso si no hay una solicitud atendida. Y eso, hasta 15 minutos después del envío de la última respuesta y si no hay una nueva solicitud en la instancia.

Si usa Cloud Functions 1st gen, puedo recomendarle que limpie el directorio /tmp cuando comience a procesar sus Cloud Functions, no al final.

Nota: Cloud Functions 2nd gen es similar a Cloud Run


EDITAR 1

Puedes jugar con el sistema y hackearlo para implementar lo que quieras.

Después de devolver la respuesta, puede crear un proceso en segundo plano que elimine el archivo específico en /tmp.

Debido a que ya no tiene acceso a la CPU, esa instrucción estará en espera.

PERO, cuando se recibe la siguiente solicitud, la CPU vuelve a funcionar para toda la instancia (no para la solicitud actual) y, por lo tanto, su proceso en segundo plano se reanudará y eliminará los archivos.

Si la instancia no recibe una nueva solicitud durante los próximos 15 minutos, se descargará y la memoria (y sus archivos) se borrarán automáticamente.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!