J'ai un site vers lequel les utilisateurs téléchargent des images. Ces images sont redimensionnées à différentes dimensions. Je le fais actuellement sur mon serveur, mais je pensais à le traiter sur AWS ou quelque chose de similaire. est-ce une bonne idée?Comment redimensionner les images hors serveur
Répondre
Vous pouvez utiliser un serveur EC2 pour faire le redimensionnement et les stocker dans S3 si vous prévoyez la nécessité d'une grande échelle et en charge. En fin de compte, cela dépendrait de beaucoup de facteurs en fonction de votre croissance et votre budget. Quelle est la charge actuelle sur votre serveur et êtes-vous proche de la capacité? Quelle est la taille et la quantité de CPU nécessaire pour redimensionner les images et peuvent-elles être mises en cache et réutilisées? Comment les images sont-elles utilisées?
Vous avez besoin de comprendre combien il faut pour traiter vos images et combien vous anticipez le traitement.
Si votre serveur peut les traiter en temps réel avec votre charge de pointe, ne vous inquiétez pas pour le moment.
Je dirais que si votre serveur peut gérer la charge, mais pas en temps réel, je construirais une file d'attente sur le serveur et un travail cron ou un démon traiterait les images en dehors de la requête. Si la file d'attente commence à croître ou si votre serveur commence à être surchargé, vous pouvez le déplacer vers une autre machine.
Si cette autre machine ne peut pas gérer la charge, vous devriez pouvoir, un peu facilement, ajouter plus de machines pour traiter la file d'attente.
À ce moment-là, vous êtes probablement assez sophistiqué et vous pouvez commencer à tirer profit de EC2 pour des choses comme mise à l'échelle de la demande.
Je l'ai utilisé EC2 et des serveurs dédiés pour des tâches similaires, et voici quelques conseils:
Utilisez aussi peu que possible IO. Si vous avez l'intention d'utiliser des éléments comme ImageMagick, sachez que l'écriture sur disque est une perte de ressources io (sauf si vous voulez le mettre en cache de toute façon.) PHP/GD vous permet d'envoyer jpeg directement dans la réponse http.
RAM libre le plus tôt possible: source de presse et les images redimensionnées à chaque fois que vous le pouvez. Éliminez les chances de votre serveur d'échanger de la mémoire. EC2 est extrêmement lent avec les commutateurs de contexte. Alors essayez le moins possible. Les processeurs comme Gimp sont extrêmement lents (une réduction de 0,2 secondes sur dédié, a pris 7 secondes sur EC2). En outre, ImageMagick est extrêmement lent, point final. Si vous le pouvez, utilisez PHP/GD pour tout votre traitement.
N'oubliez pas de définir la mémoire maximale. Vous aurez besoin de deux copies de l'image en mémoire (source et réduite.)
Last but not least: commencer avec le temps réel. Ne commencez pas avec une solution trop lourde de files d'attente mysql et de démons externes. Ceux-ci s'avéreront difficiles à maintenir à long terme. Essayez donc en temps réel avant de construire une fusée.
Bonne chance!
- 1. Comment pouvez-vous redimensionner les images avec css dans IE?
- 2. Redimensionner des images dans le répertoire
- 3. développeur web visuel redimensionner "toutes les images" ensemble?
- 4. redimensionner les images avec la toile - css problème de débordement
- 5. Comment utiliser un CGLayer pour dessiner plusieurs images hors écran
- 6. Comment redimensionner et filigraner des images dans Ruby/Rails?
- 7. OCR: Comment comparer les images, trier hors pair et le faire rapidement?
- 8. redimensionner dynamiquement des images en php jpg/png/gif
- 9. Redimensionner et recadrer les images avant de les afficher dans UITableViewCells
- 10. Comment garder les contrôleurs hors de xib
- 11. Comment redimensionner toutes les images dans un bloc de HTML à une largeur spécifique et mettre en cache les résultats
- 12. Comment télécharger/redimensionner des images prises avec un appareil photo numérique?
- 13. Comment aligneriez-vous les images?
- 14. WPF Les images n'affichent pas quand la visibilité est mis hors
- 15. Comment utiliser les informations d'identification LDAP hors connexion?
- 16. Comment redimensionner un System.Windows.Forms.ToolBar?
- 17. stocker des images dans le serveur sql
- 18. CruiseControl.net Serveur Windows 2008 Images manquantes
- 19. Downscale/redimensionner?
- 20. Comment redimensionner et rogner efficacement des images dans une application ASP.NET?
- 21. Comment faire pour redimensionner les contrôles dans les fenêtres redimensionnables?
- 22. Comment redimensionner une image?
- 23. Comment détecter iframe redimensionner?
- 24. Comment redimensionner recaptcha?
- 25. Comment écrire une application Silverlight hors ligne?
- 26. Redimensionner l'image dans Grails
- 27. Comment redimensionner l'intégralité de l'écran?
- 28. asp.net mvc: Comment imprimer les images?
- 29. Comment afficher les images dans datatable?
- 30. Comment redimensionner un bouton de soumission?