2012-05-07 15 views
5

En mi aplicación; los usuarios pueden subir videos y quiero mantenerlos en el sistema de archivos y no en la base de datos. Si uso Amazon Web Services (AWS) y uso solo una instancia de EC2 con EBS (para almacenamiento) está bien. Pero si uso el escalado automático o varias instancias de EC2; luego, si el usuario carga el video, se guarda en uno de los EC2 (asociado con uno de EBS). La próxima vez, si el usuario inicia sesión (o si la pegabilidad de la sesión no está allí, entonces, si la próxima solicitud del usuario va a otra instancia de EC2) ¿cómo accederá a su video?Cómo guardar archivos multimedia en AWS con varias instancias EC2 en AWS

¿Cuál es la mejor solución para este problema? Está usando S3 como la única solución, pero por eso no puedo hacer java.io.File ... Creo que tendré que usar la API de AWS para acceder a los videos cargados ... pero ¿no será más lento?

¿Hay alguna solución mejor?

+1

Con S3, el archivo se puede descargar directamente al navegador, sin pasar por EC2. Eso es potencialmente más rápido, también. – Thilo

+0

¿Cuántos y cuántos tamaños de archivos de video estamos hablando aquí? – shashankaholic

+0

max 5 - 10 mb .. no debe exceder ese – Deepak

Respuesta

4

Yo usaría Amazon S3. Es rápido, relativamente barato y funciona bien si está utilizando otros servicios web de Amazon.

Puede cargar primero en la instancia de EC2 y usar Simple Workflow Servie para transferir los archivos centralmente de forma automática. Esto también es útil si desea volver a codificar el video a una tasa de bits más tarde.

+0

Gracias Ben por la información. Sentí que S3 es bastante lento. – Deepak

+0

@Deepak Si se asegura de que su cuenta s3 y su cuenta ec2 estén en la misma región (es decir, eu-west o nos-east), la transferencia será muy rápida ya que se encuentran en el mismo centro de datos. – Ben

+1

s3 es de hecho lento, pero puede emparejarlo con la nube para servir los archivos. Es fácil de configurar e hiperveloz cuando emparejas los dos. –

0

Necesita configurar el NAS. Puede ser NFS o algo así como GlusterFS. El último es moderno y se escala bien ...

Cuestiones relacionadas