Cómo añadimos soporte de Cloudflare R2 en exactamente una semana
En el panorama tecnológico en constante evolución, anticiparse a los cambios es imprescindible. En Transloadit nos enorgullecemos de nuestra agilidad y de nuestro compromiso con las necesidades cambiantes de nuestros clientes. Hace poco tuvimos la oportunidad de demostrar nuestra dedicación a la satisfacción del cliente cuando uno de ellos nos contactó con una solicitud específica sobre el soporte para Cloudflare R2.

¿Qué es Cloudflare R2?
Antes de profundizar en el reto técnico al que nos enfrentamos al implementar el soporte para Cloudflare R2, veamos brevemente qué es realmente Cloudflare R2. Cloudflare R2 es un servicio global de almacenamiento de objetos que te permite guardar grandes cantidades de datos no estructurados. Del mismo modo que S3 puede resultarte atractivo gracias a su fácil integración con el resto del ecosistema de AWS, Cloudflare R2 puede ser una buena opción si ya utilizas otros servicios de Cloudflare.
Tanto si ya usas Cloudflare R2 como si estás pensando en migrar desde otro servicio de almacenamiento de blobs, puedes usar los nuevos Robots de Transloadit para Cloudflare y así integrar sin fricciones tu stack actual de procesamiento de archivos. Más adelante detallaremos cómo hacerlo, pero por ahora retomemos el hilo.
Todo empezó cuando un cliente escribió a nuestro equipo de soporte para preguntar si teníamos un Robot para el R2 de Cloudflare, ya que buscaba alternativas a DigitalOcean Spaces y Amazon S3. En ese momento no teníamos integración con la plataforma R2, lo que significaba que Transloadit no sería una opción viable para sus necesidades de procesamiento de archivos si decidía cambiarse a Cloudflare R2.
Sin embargo, como no nos echamos atrás ante un reto, nuestro cofundador Tim le comunicó al cliente que entregaríamos la función en las siguientes semanas. Esto fue el 29 de marzo.

El fin de semana siguiente fue un descanso de cuatro días por Semana Santa, que además coincidió con el inicio de las vacaciones de Tim. Sin embargo, en cuanto Tim volvió de sus vacaciones el 4 de abril, empezó de inmediato a trabajar en el soporte para Cloudflare R2.

Después solo hizo falta un único día para que la función estuviera lista para desplegarse y para que el cliente pudiera usarla.

Por supuesto, el trabajo no estaba del todo terminado, ya que aún quedaban por finalizar la documentación y otras tareas relacionadas. Aun así, pasaron exactamente siete días desde el ticket inicial del cliente hasta una versión funcional y desplegada que podía usar en producción. Aunque no podemos prometer esta rapidez en todos los futuros lanzamientos de funciones, demuestra nuestro compromiso de aportar valor a nuestros clientes lo más rápido posible, para que puedas centrarte en el núcleo de tu producto.
Uso de los Robots de Cloudflare
Los Robots de Cloudflare R2 ya están disponibles para todo el mundo, así que veamos cómo puedes integrar /cloudflare/store y /cloudflare/import .
{
"steps": {
"imported": {
"robot": "/cloudflare/import",
"result": true,
"credentials": "YOUR_CLOUDFLARE_R2_CREDENTIALS",
"path": "my_source_folder/file.png"
},
"converted": {
"use": "imported",
"robot": "/image/resize",
"result": true,
"format": "jpg",
"imagemagick_stack": "v3.0.1"
},
"exported": {
"robot": "/cloudflare/store",
"use": "converted",
"result": true,
"credentials": "YOUR_CLOUDFLARE_R2_CREDENTIALS",
"path": "my_target_folder/file.jpg"
}
}
}
El Template anterior importa un archivo desde Cloudflare R2, lo convierte a JPG y luego lo exporta de vuelta a una carpeta de destino en Cloudflare R2. Es un Template muy sencillo, pensado solo para demostrar la idea, pero si quieres hincarle el diente a algo con más sustancia, echa un vistazo a nuestra lista de demos (English) para ver una variedad de casos de uso distintos.
¿Qué sigue?
Siempre buscamos nuevas formas de innovar y tenemos muchas funciones nuevas que esperamos mostrar pronto. No olvides suscribirte a Dev Times (English) más abajo para estar al día de las novedades, tanto de Transloadit como del mundo tecnológico en general.
