Carga masiva de imágenes con API de almacenamiento y API de servicios

21

Estoy tratando de configurar un sitio que almacenará una gran cantidad de imágenes (aproximadamente 50,000 para empezar). La estrategia para esto fue utilizar la API de almacenamiento y el almacenamiento S3 para hacer frente a los costos de alojamiento, y la API de servicios para proporcionar una interfaz para un convertidor / cargador fuera de línea para llevar las imágenes al sitio.

Esto funciona bastante bien. Si subo una imagen manualmente creando un nodo y completando el campo de imagen, se envía a la API de almacenamiento y suceden cosas buenas. También puedo cargar archivos y crear nodos desde el cargador sin conexión a través de la API de servicios XMLRPC.

El problema es que los archivos cargados con el cargador sin conexión no son manejados por Storage API. Actualmente, el script usa el método de la API de servicios 'file.create' para crear y objetar, luego los detalles devueltos se usan para completar el campo de imagen en el nodo que se crea a continuación. Espero que haya una mejor manera de hacer esto, pero no estoy seguro.

Mike Cooper
fuente
muy interesante. ¿Las miniaturas se generan por primera vez en el sistema de archivos local antes de transferirse a S3?
Uwe
1
Cuando las cosas funcionan correctamente, sí. Se generan miniaturas y luego se almacenan en una clase de almacenamiento cuyo contenedor inicial es el sistema de archivos. Cuando se ejecuta cron, se transfieren a S3 y se eliminan del sistema de archivos.
Mike Cooper
Mike, ¿la carga masiva de imágenes va a ser una tarea recurrente? ¿Desea utilizar un cargador sin conexión para evitar php y servidor web?
Tom
Ya hay una solicitud de función para esto. Vigila este hilo. Cuando alguien lo escribe, seguramente terminará aquí.
Queenvictoria

Respuestas:

3

Todavía en los primeros desarrollos, pero finaliza Storage API Populate :

Storage API Populate proporciona un mecanismo para mover archivos existentes dentro de los campos de archivo / imágenes al almacenamiento. El módulo requiere el módulo API de almacenamiento .

Para un escenario en el que tiene un sitio existente, sin ningún soporte de Cloud / CDN para los activos y le gustaría usar la API de almacenamiento para administrar el almacenamiento y la entrega de archivos.

paul.linney
fuente