A Edmodo é uma rede social que permite que professores criem e mantenham comunidades de salas de aula. Os professores podem distribuir testes e avaliações para estudantes individuais, bem como se comunicar com grupos de estudantes. Desde a sua criação, em 2008, a Edmodo tem sido amplamente adotada pela comunidade acadêmica dos ensinos fundamental e médio.

Inicialmente, todos os bancos de dados da Edmodo eram instâncias do Amazon Elastic Compute Cloud (Amazon EC2) executando bancos de dados MySQL. Com a rápida expansão, a equipe de operações teve de se concentrar na manutenção diária dos bancos de dados MySQL em vez de em outros serviços de back-end para oferecer novos recursos e gerenciar o crescimento futuro.

A Edmodo decidiu mudar para o Amazon Relational Database Service (Amazon RDS) por três motivos principais: produtividade, alta disponibilidade e facilidade de uso, combinadas com o baixo custo.

Aumento da produtividade da equipe: o Amazon RDS remove a complexidade da implantação e do gerenciamento de bancos de dados automatizando tarefas trabalhosas como instalação e patching de software, monitoramento e backups de bancos de dados.

No outono de 2011, quando as escolas estavam reiniciando os períodos letivos, a Edmodo estava registrando 250.000 novos estudantes por semana. Durante esse pico de crescimento, a empresa percebeu que sua implantação do MySQL 5.1 estava perto do limite de conexões e decidiu fazer uma atualização para o MySQL 5.5. A atualização deveria ser concluída em menos de 16 horas para minimizar o impacto sobre os clientes. Jack Murgia, engenheiro sênior de operações web da Edmodo, comentou a atualização: "Para mim, o que foi incrível é que o recurso de operações (eu mesmo) e um administrador de banco de dados puderam testar o processo dessa migração, com 100% de certeza, sem alterar absolutamente nada no ambiente de produção até o momento da migração. Sem o Amazon RDS, essa migração não teria sido possível em menos de 16 horas."

Alta disponibilidade: as implantações do Amazon RDS em zonas de disponibilidade múltipla (Multi-AZ) proporcionam replicação de datacenters para recuperação de desastres. A Edmodo usa todos os bancos de produção em implantações Multi-AZ. "O Multi-AZ simplesmente funciona", afirmou Jack. "Eu já tinha gerenciado uma implantação MySQL com vários mestres anteriormente, que exigia alto volume de manutenção. Agora, nem mesmo me preocupo com a nossa alta disponibilidade."

Custo e facilidade de uso: a definição de preço sob demanda e o console de gerenciamento simplificado do Amazon RDS oferecem flexibilidade econômica e técnica. Diego Jiménez, administrador de banco de dados da Edmodo, afirmou que "o Amazon RDS simplifica drasticamente tarefas trabalhosas de gerenciamento em instâncias normais que executam o MySQL. Podemos criar cópias de nossos bancos de dados de produção usando réplicas de leitura com apenas alguns cliques quando o nosso departamento de marketing precisa consultar dados de produção quase em tempo real. Antes, seriam necessárias horas para a inicialização e o monitoramento."

Todas as operações da Edmodo são executadas inteiramente na Amazon Web Services (AWS). A figura abaixo mostra um diagrama da arquitetura, que inclui os serviços Amazon RDS, Amazon Route 53, Amazon S3, Amazon CloudWatch e Amazon CloudFront.

Edmodo Architecture Diagram

Figura 1. Arquitetura da Edmodo na AWS

Hoje, os bancos de dados da Edmodo comportam mais de 500 conexões por segundo durante horários de pico e hospedam mais de 200 mil solicitações de site por minuto. Com o apoio do Amazon RDS, a Edmodo está solidamente posicionada para a expansão decorrente da popularidade atual.

Jack Murgia conclui: "o Amazon RDS economiza muito tempo. O efeito positivo da simplificação dos processos e da eliminação de restrições de tempo sobre o desempenho da equipe de operações é inestimável. O Amazon RDS liberou o tempo necessário para implantarmos monitoramento de uso e geração de relatórios sofisticados, que estávamos adiando a meses, permitindo o crescimento integrado da nossa empresa."

Para saber mais sobre como a AWS pode ajudar a atender necessidades de banco de dados, acesse a nossa página de detalhes do Relational Database Service: http://aws.amazon.com/rds/.