Edmodo es una red social que les permite a los profesores crear y mantener comunidades de aulas. Los profesores pueden distribuir exámenes y notas de manera individual o comunicarse con grupos de estudiantes. Desde su creación en 2008, Edmodo tuvo una gran aceptación por parte de la comunidad académica de escuelas primarias y secundarias.
Al principio, todas las bases de datos de Edmodo eran instancias de Amazon Elastic Compute Cloud (Amazon EC2) que se ejecutaban en bases de datos de MySQL. Debido al rápido crecimiento, el equipo de operaciones se vio obligado a enfocarse en el mantenimiento diario de las bases de datos de MySQL, en vez de en otros servicios de backend, para poder incorporar nuevas características y administrar el crecimiento futuro.
Edmodo decidió trasladarse a Amazon Relational Database Service (Amazon RDS) por tres motivos principales: productividad, alta disponibilidad y facilidad de uso combinada con bajo costo.
Aumento de la productividad del equipo: Amazon RDS simplifica la implementación y la administración de bases de datos a través de la automatización de tareas lentas, como instalación de software y parches, monitorización y backups de bases de datos.
En otoño de 2011, cuando las escuelas retomaban sus actividades, Edmodo inscribía 250 000 estudiantes nuevos por semana. Durante este breve período de crecimiento, la compañía observó que su implementación de MySQL 5.1 estaba alcanzando el límite de conexiones y decidió actualizar a MySQL 5.5. Para evitar afectar a los clientes, debían completar la actualización en menos de 16 horas. Jack Murgia, ingeniero de operaciones web sénior de Edmodo, dice lo siguiente acerca de esta actualización: "Lo que más me sorprendió fue que una persona del área de operaciones (yo) y un administrador de base de datos pudimos probar el proceso de esta migración con una precisión del 100% sin recurrir a nuestro entorno de producción hasta que llegó el momento de realizar la migración. Sin Amazon RDS, no hubiera sido posible realizar esta migración en menos de 16 horas".
Alta disponibilidad: las implementaciones en varias zonas de disponibilidad (Multi-AZ) para Amazon RDS ofrecen replicación de centros de datos para casos de recuperación de desastres. Edmodo utiliza todas sus bases de datos de producción en el despliegue Multi-AZ. "Multi-AZ realmente funciona", dice Murgia. "Administré una implementación con varios maestros de MySQL en el pasado y exige un alto grado de mantenimiento. Ahora, jamás pienso en nuestra alta disponibilidad".
Costo y facilidad de uso: los precios bajo demanda y la consola de administración simplificada para Amazon RDS ofrece una flexibilidad técnica y económica. El administrador de base de datos de Edmodo, Diego Jiménez, dice "Amazon RDS simplifica radicalmente las tareas que son lentas de administrar en instancias normales que ejecutan MySQL. Podemos girar copias de nuestras bases de datos de producción con réplicas de lectura con tan solo unos clics cuando el departamento de marketing necesita realizar consultas en datos de producción de casi tiempo real. Antes, el inicio y la monitorización hubieran llevado horas".
Edmodo se ejecuta en su totalidad en Amazon Web Services (AWS). La siguiente ilustración ofrece un diagrama de la arquitectura, que incluye Amazon RDS, Amazon Route 53, Amazon S3, Amazon CloudWatch y Amazon CloudFront.
En la actualidad, las bases de datos de Edmodo admiten 500 conexiones por segundo en los períodos de mayor demanda y hospedan más de 200 000 solicitudes del sitio web por minuto. Con la sólida base de Amazon RDS, Edmodo tiene un posicionamiento firme que le permite expandirse a partir de su popularidad actual.
Jack Murgia concluye "Amazon RDS permite ahorrar tiempo. No se puede subestimar el efecto positivo que tienen la simplificación de procesos y la liberación de la limitación de tiempo en el desempeño del equipo de operaciones. Amazon RDS liberó tiempo que era necesario para implementar herramientas sofisticadas de generación de informes y monitorización de uso que habíamos aplazado durante meses, lo que nos permitió hacer crecer el negocio de manera ininterrumpida".
Para obtener más información sobre cómo AWS puede ayudarlo a satisfacer sus necesidades relacionadas con bases de datos, visite nuestra página de información sobre Relational Database Service: http://aws.amazon.com/rds/.