Problema con l'upload dell'immagine

Ciao,

penso che questa correzione FIX: automatically timeout long running image magick commands (#12670) · discourse/discourse@5deda5e · GitHub abbia rotto il caricamento di più immagini. Se provo a caricare 3 immagini da ~5-6 MB non funziona e ogni volta viene visualizzato questo errore. Credo sia dovuto al timeout di 20 secondi.

lib/discourse.rb:93:in 'exec': Si è verificato un errore durante la conversione da PNG a JPG.

Grazie :slight_smile:

Funziona male su questo sito? Puoi provare a caricare l’immagine (purché sia adatta ai bambini)

Dobbiamo impostare un limite qui, non possiamo spingerci molto oltre i 20 secondi

1 Mi Piace

Ciao Sam,
L’ultima volta che l’ho provato, si è bloccato anche qui, ecco perché l’ho classificato come bug, ma ora è stato caricato. Sul mio sito fallisce ogni volta. Dimensione ~6MB/foto

Oh, questa è una situazione complicata: vorrei eseguire il debug in locale. Potresti caricare una delle immagini originali da qualche parte, così da poterle scaricare e testare quanto tempo richiedono i vari comandi di ImageMagick.

Potrei valutare l’aggiunta di un’impostazione del sito con un “timeout più lungo”, ma sono un po’ preoccupato che la conversione di questa semplice immagine da PNG a JPG stia richiedendo oltre 10 secondi.

3 Mi Piace

Grazie! Ho caricato alcune immagini su Mega File folder on MEGA

Puoi confermare di aver eseguito un’installazione Docker standard?

Ho appena testato una delle tue immagini sopra: eseguiamo due comandi nel contenitore.

timeout -k 10.0 5 identify -format %Q image.jpg

e

timeout -k 40.0 20 convert jpeg:original.jpg -auto-orient -background white -interlace none -flatten -quality 90 jpg:/tmp/target.jpg

Il primo comando impiega 0,27 secondi dei 5 secondi concessi sul mio sistema locale.

Il secondo comando impiega 1,3 secondi dei 20 secondi concessi.

Puoi darmi maggiori informazioni sulla tua installazione e sulle prestazioni specifiche del server su cui è in esecuzione?

1 Mi Piace

Grazie Sam per aver verificato. Sì, è un’installazione Docker standard. Ieri ho aggiornato il server perché il sito web intero stava diventando molto lento… e ho effettuato una ricostruzione. Con l’aggiornamento del server ora funziona bene. Ho appena fatto una prova. Digital Ocean ha introdotto un nuovo piano da circa 2 mesi con CPU Intel Premium, mentre quello che avevamo prima, con CPU Regular, si è notevolmente indebolito.

Il vecchio server :arrow_down_small:
Basic - CPU condivisa 2 vCPU, 4 GB di RAM, 60 GB di spazio

Il nuovo server :arrow_down_small:
Basic - CPU Intel Premium condivisa 2 vCPU, 4 GB di RAM, 60 GB di spazio

Scusa per l’argomento. 20 secondi sono stati sufficienti. E grazie ancora! :slightly_smiling_face:

1 Mi Piace

Sì, penso che ci stiamo comportando correttamente qui.

Se non impostiamo un timeout, c’è un alto rischio che queste istanze sottodimensionate vengano sovraccaricate dagli utenti che caricano immagini. 20 secondi sono una quantità enorme di CPU da concedere alle persone per il ridimensionamento delle immagini.

3 Mi Piace

Questo argomento è stato chiuso automaticamente dopo 15 ore. Non sono più consentite nuove risposte.