Combinar el Web Accelerator de Sakura Cloud (CDN) con AWS S3
Web Accelerator Servidor
Published: 2018-12-28

Este es un contenido trasladado de Qiita.

Supongo que es común usar S3 + CloudFront para distribuir imágenes y otros contenidos, pero si la distribución se limita al ámbito nacional, creo que S3 + el servicio de CDN Web Accelerator de Sakura Cloud puede ser más económico, así que voy a configurarlo.

No he verificado si realmente la facturación es más barata.

La tarifa de distribución de CloudFront es aproximadamente 0.140 USD (15.8 yenes a partir del 28 de diciembre de 2017) por cada 1 GiB, por lo que parece que el Web Accelerator, que cuesta alrededor de 5 yenes (impuestos incluidos) por cada 1 GiB, es más barato.

Además, el Web Accelerator no tiene tarifas basadas en la cantidad de solicitudes, así que puede ser más fácil de entender que CloudFront.

Sin embargo, es importante tener en cuenta que con S3-> Web Accelerator se generará un cargo por la cantidad de solicitudes y el uso de datos de S3. Por lo tanto, en caso de un error de caché, se incurrirán en costos en el lado de S3, así que hay que tener cuidado.

No he hecho una comparación ya que no lo he utilizado realmente, pero si hay expertos, por favor háganmelo saber.

Configuración de S3

Creemos un bucket en AWS S3

Creación del bucket

Haga clic en “Crear bucket” en la pantalla de configuración de S3 en la consola de AWS.

Nombre del bucket

Configure un nombre para el bucket de manera apropiada (de momento, la región será Tokio).

Creo que no es necesario hacer ninguna configuración especial aquí, así que lo omito.

Por ahora, dejemos esto así.

Confirme y cree el bucket.

Configurando la publicación de un sitio estático en S3

Seleccione el nombre del bucket que configuró anteriormente y realice la configuración.

Desde las propiedades, habilite “Hosting de sitios web estáticos”.
En este momento, tome nota del endpoint que se muestra, ya que lo usará más tarde en la configuración del Web Accelerator.

Subamos archivos

Para una prueba, subiremos archivos a través de la interfaz web sin usar s3cmd.

Suba desde la pestaña de “Subida” en el resumen.

Cree un archivo index.html de prueba y súbalo.

Confirme y haga clic en “Siguiente”.

Siguiente.

Configure el encabezado Cache-Control: s-maxage=3600 (1 hora) para que se almacene en caché en el Web Accelerator.

Confirme y suba el archivo.

Como se ha subido el archivo, ahora lo publicarán.

Haga clic en “Publicar” para publicar el archivo que ha subido.

Si accede al endpoint del “Hosting de sitios web estáticos” que configuró anteriormente, debería poder ver el archivo que subió correctamente.


Se puede confirmar que el archivo subido se muestra correctamente y que el encabezado Cache-Control: s-maxage también está presente.

Configuración del Web Accelerator

Creación de un sitio para distribución

Desde la pantalla de creación de un nuevo sitio en el Web Accelerator, cree un sitio para distribución de S3.


Esta vez lo configuraré como un subdominio.
Nombre del sitio: Asigne un nombre aleatorio.
Servidor de origen: Configure el endpoint que se mostró anteriormente en el Hosting de sitios web estáticos.

Haga clic en “Guardar” para guardar el sitio. Debería aparecer una pantalla de finalización exitosa.

Desde la configuración, active el sitio.

Una vez habilitado, pruebe a acceder a través del subdominio emitido.

Ahora debería poder acceder correctamente, y si recarga varias veces, verá que se indica X-Cache: HIT, confirmando que el Web Accelerator está almacenando en caché y distribuyendo correctamente el contenido.

Por último

Subir archivos a través de la web es un poco pesado, así que usando una clave API y herramientas como s3cmd, debería ser posible subir archivos rápidamente y distribuirlos a través del Web Accelerator.

s3cmd put --add-header "Cache-Control: s-maxage=3600" --acl-public (omitido)

Esto debería permitirle realizar lo mismo que al subir a través de la web.