2010-10-08 6 views
0

Je crée un site où un client vendra sa photographie dont il vendra beaucoup et qui recevra probablement un peu de trafic. Probablement autour de 2k-5k uniques par jour. J'utilise MongoDB avec PHP et je lis que je devrais utiliser GridFS pour stocker ces gros fichiers. Plus de 2MB-5MB de photos, mais évidemment BW sera extrêmement dépensier (im sur l'hébergement cloud) et le chargement de ces images rendra le chargement des pages une éternité. Alors, comment créer des miniatures avec GridFS en PHP et MongoDB? Je ai googlé et je ne peux pas sembler trouver des informations réelles, sauf les personnes pointant vers: http://www.php.net/manual/en/class.mongogridfs.phpCréer des miniatures avec GridFS + MongoDB + PHP

mais je ne sais pas quoi faire avec cette information. Ai-je besoin de (je ne l'espère pas, ce serait un peu en désordre):

Télécharger -> stocker l'original -> utiliser GD Lib pour redimensionner l'original -> redimensionné l'image à GridFS comme une valeur de méta à l'image originale?

Répondre

0

Je me suis contenté de créer mes propres miniatures après les avoir sauvegardées dans MongoDB avec GD2, puis d'enregistrer les miniatures en même temps que la taille réelle.

0

Une chose que je l'ai été dans un try {} catch

  1. image originale magasin (ou votre plus grande taille) en utilisant les informations META comme user_id, post_id, size = original, height = xxx, width = yyy
  2. boucle à travers toutes vos tailles et magasin en utilisant les mêmes informations META comme la principale, size = $ size, width = xxx, height = yyy, id_parent = ID de votre fichier d'origine

si une exception se produit (gd échoue, mongo échoue, e tc ...) puis vous supprimez les fichiers afin de ne pas gaspiller le stockage.

Questions connexes