Después de leer el archivo Storing Images in DB - Yea or Nay? Creo que el sistema de archivos es el lugar adecuado para el almacenamiento de imágenes. Pero me gustaría saber cómo maneja el control de copia de seguridad/versión de las imágenes cargadas en sus diferentes entornos (dev/stage/prod) y para el balanceo de carga de la red.El control de versiones de las imágenes cargadas al sistema de
estos problemas es bastante fácil de manejar cuando se trabaja con una base de datos, por ejemplo, hacer una copia de seguridad desde el entorno de producción y restaurar la base de datos en el entorno de desarrollo.
¿Qué opinas de utilizar, por ejemplo, git para manejar el control de versiones de archivos subidos por ejemplo?
Producción Medio Ambiente:
- Una imagen se carga en una carpeta compartida en el servidor web.
- metadatos se almacenan en la base de datos
- La imagen se agrega automáticamente a un repositorio git
desarrollador en el trabajo:
- desprotege el código fuente.
- Ejecuta un script para restaurar la base de datos.
- Ejecuta un script para obtener las últimas imágenes.
creo que la solución anterior es bastante suave para el desarrollador, las imágenes estarán bajo el control de versiones y los entornos pueden ser aislados unos de otros.
Parece una buena idea. – grenade
"use un repositorio completamente separado del código fuente": esto no es incompatible con el enfoque del submódulo: la idea sigue siendo que el repositorio de código fuente haga referencia a una confirmación determinada del repositorio de imágenes, pero este último (el repositorio de imágenes) todavía está un repo "completamente separado". – VonC