Problème de téléversement d'image

Bonjour,

Je pense que cette correction FIX: automatically timeout long running image magick commands (#12670) · discourse/discourse@5deda5e · GitHub a cassé le téléchargement multiple d’images. Si j’essaie de télécharger 3 images de ~5-6 Mo, cela ne fonctionne pas ; à chaque fois, cette erreur s’affiche. Je pense que c’est dû au délai d’attente de 20 secondes.

lib/discourse.rb:93:in 'exec' : Une erreur s'est produite lors de la conversion de PNG en JPG.

Merci :slight_smile:

Cela échoue-t-il sur ce site ? Pouvez-vous essayer de télécharger l’image (à condition qu’elle soit appropriée pour les enfants) ?

Nous devons imposer une limite ici ; nous ne pouvons pas aller bien au-delà de 20 secondes.

1 « J'aime »

Bonjour Sam,
La dernière fois que j’ai essayé, cela a échoué ici aussi, c’est pourquoi je l’ai classé comme un bug, mais maintenant cela a été téléchargé. Sur mon site, cela échoue à chaque fois. Taille ~6 Mo / photo

Oh, c’est délicat, je souhaite déboguer localement. Pouvez-vous héberger l’une des images originales quelque part pour que je puisse la télécharger et tester la durée d’exécution des différentes commandes ImageMagick ?

Je pourrais envisager d’ajouter un paramètre de site avec un « délai d’attente plus long », mais je suis quelque peu inquiet que la conversion de cette image simple de PNG vers JPG prenne plus de 10 secondes.

3 « J'aime »

Merci ! J’ai téléchargé des images sur Mega File folder on MEGA

Pouvez-vous confirmer que vous utilisez une installation Docker standard ?

Je viens de tester l’une de vos images ci-dessus ; nous exécutons deux commandes dans le conteneur.

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

et

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

La première commande prend 0,27 seconde sur les 5 secondes allouées sur mon système local.

La deuxième commande prend 1,3 seconde sur les 20 secondes allouées.

Pouvez-vous m’en dire un peu plus sur votre installation et sur les performances spécifiques du serveur sur lequel elle s’exécute ?

1 « J'aime »

Merci Sam, pour avoir vérifié cela. Oui, installation Docker standard. Hier, j’ai mis à niveau le serveur car tout le site web devenait très lent… et j’ai effectué une reconstruction. Avec la mise à niveau du serveur, tout fonctionne bien. Je viens de tester. Digital Ocean propose un nouveau plan depuis environ 2 mois avec un processeur Intel Premium, alors que l’autre que nous avions, le modèle Standard, devient beaucoup moins performant.

L’ancien serveur :arrow_down_small:
Basic - CPU partagé 2 vCPUs 4 Go 60 Go

Le nouveau serveur :arrow_down_small:
Basic - CPU partagé Intel Premium 2 vCPUs 4 Go 60 Go

Désolé pour ce sujet. 20 secondes suffisent. Et merci encore ! :slightly_smiling_face:

1 « J'aime »

Oui, je pense que nous nous comportons correctement ici.

Si nous ne mettons pas de délai d’attente, il y a un risque élevé que ces instances peu puissantes soient saturées par des utilisateurs téléchargeant des images. 20 secondes représentent une quantité énorme de temps CPU à accorder aux utilisateurs pour le redimensionnement d’images.

3 « J'aime »

Ce sujet a été automatiquement fermé après 15 heures. De nouvelles réponses ne sont plus autorisées.