Edmodo는 교사가 학급 커뮤니티를 만들고 유지할 수 있는 소셜 네트워크입니다. 교사는 개별 학생에게 퀴즈와 성적을 배포하고 학생 그룹과 소통할 수 있습니다. 2008년에 설립된 이래로 Edmodo는 유치원부터 고등학교 3학년까지의 학술 커뮤니티에 폭넓게 도입되었습니다.

초기에는 Edmodo의 모든 데이터베이스가 MySQL 데이터베이스 구동 Amazon Elastic Compute Cloud(EC2) 인스턴스였습니다. 빠르게 확장되면서 운영 팀은 새로운 기능을 지원하고 미래의 성장을 관리하기 위한 다른 백엔드 서비스에 신경 쓰는 것이 아니라 매일 MySQL 데이터베이스를 유지 관리하는 데 집중해야 했습니다.

Edmodo는 생산성, 고가용성, 저렴한 비용과 결합된 사용의 간편성이라는 3가지 중요한 이유로 Amazon Relational Database Service(RDS)로 이전하기로 했습니다.

팀의 생산성 증가: Amazon RDS는 소프트웨어 설치, 패칭, 모니터링 및 데이터베이스 백업과 같은 번거로운 작업을 자동화함으로써 데이터베이스를 배포하고 관리하는 복잡성을 없애줍니다.

2011년 가을에 신학기가 시작될 때 Edmodo에는 매주 250,000명의 새로운 학생이 등록했습니다. 이렇게 급성장하는 동안 Edmodo는 MySQL 5.1 배포가 연결 한도에 가까워지고 있다는 것을 깨닫고 MySQL 5.5로 업그레이드하기로 했습니다. 고객에 미치는 영향을 최소화하기 위해서는 이 업그레이드를 16시간 이내에 완료해야 했습니다. Edmodo의 웹 운영 책임 엔지니어인 Jack Murgia는 이번 업그레이드에 대해 "놀라운 일은 한 명의 운영 담당자(바로 저)와 한 명의 데이터베이스 관리자가 100%의 확신을 가지고 이번 마이그레이션 프로세스를 테스트할 수 있었다는 것입니다. 마이그레이션할 때까지 프로덕션 환경을 한 번도 손댄 적이 없습니다. Amazon RDS가 없었다면 16시간 이내에 마이그레이션할 수 없었을 것입니다."라고 말합니다.

고가용성: Amazon RDS의 다중 가용 영역(다중 AZ) 배포는 재해 복구를 위한 데이터 센터 복제를 제공합니다. Edmodo는 모든 프로덕션 데이터베이스를 다중 AZ 배포에서 사용합니다. "다중 AZ는 정말 훌륭합니다."라고 Jack은 말합니다. "전에 MySQL 다중 마스터 배포를 관리했었지만 정말 손이 많이 가는 작업이었습니다. 이제는 고가용성에 대해 고민할 필요도 없습니다."

비용 및 사용 편의성: Amazon RDS의 온디맨드 요금과 간소화된 관리 콘솔은 경제적 및 기술적 유연성을 제공합니다. Edmodo의 데이터베이스 관리자인 Diego Jiménez는 "Amazon RDS는 MySQL을 실행하는 일반 인스턴스에서는 관리하기 번거로운 작업을 획기적으로 간소화합니다. 마케팅 부서에서 거의 실시간 프로덕션 데이터를 쿼리해야 하는 경우, 클릭 몇 번만으로 읽기 전용 복제본을 사용하여 프로덕션 데이터베이스 복사본을 가동할 수 있습니다. 이전에는 시작하고 모니터링하는 데 몇 시간씩 걸렸을 작업입니다."라고 말합니다.

Edmodo는 모든 것을 Amazon Web Services(AWS)에서 실행합니다. 아래 그림은 Amazon RDS, Amazon Route 53, Amazon S3, Amazon CloudWatchAmazon CloudFront가 포함된 아키텍처 다이어그램입니다.

Edmodo Architecture Diagram

그림 1. AWS 기반 Edmodo 아키텍처

현재 Edmodo의 데이터베이스는 피크 시간에 초당 500개 이상의 연결을 지원하고 분당 20만 건 이상의 웹 사이트 요청을 호스팅합니다. Edmodo는 Amazon RDS를 기반으로 현재 수요로 확장할 수 있는 견고한 위치를 구축했습니다.

Jack Murgia는 "Amazon RDS는 시간을 절약해줍니다. 프로세스 간소화와 시간 제약 완화가 운영 팀의 성과에 미치는 긍정적인 영향은 아무리 강조해도 지나치지 않습니다. Amazon RDS는 우리가 몇 달 동안 미뤄왔던 정교한 사용 모니터링 및 보고 도구를 배포하는 데 필요한 시간을 만들어 주었고 이를 통해 비즈니스를 원활하게 성장시킬 수 있었습니다."라는 말로 끝을 맺었습니다.

AWS가 어떻게 귀사의 데이터베이스 요구 사항을 지원할 수 있는지 자세히 알아보려면 AWS Relational Database Service 세부 정보 페이지(http://aws.amazon.com/rds/)를 참조하십시오.