초당파 정치 조직인 League of Women Voters(LWV)는 1920년부터 교육과 변론을 통해 미국 정부 시스템을 개선하고 공공 정책에 영향을 주기 위해 노력해왔습니다. LWV는 약 30명의 정직원과 전국적으로 750개가 넘는 자원봉사자 중심의 파트너가 있습니다. LWV Education Fund(LWVEF)는 대중에게 초당파 선거 정보를 제공하는 VOTE411.org 웹 사이트를 운영합니다. 이 사이트는 투표소, 선거일 및 등록 기한, 후보자 및 투표 법안에 대한 정보, 부재자 투표 절차, 그 외 선거 절차에 대한 측면 등의 주제를 다룹니다.

웹 사이트가 선거를 전문으로 다루다 보니 VOTE411.org에서는 연방 선거가 있는 해에 며칠간 사용량이 급증합니다. VOTE411.org의 트래픽 볼륨은 그 외의 시간에는 상대적으로 적습니다.

사이트 초기에는 이러한 트래픽 급증을 처리하기 위해서는 큰 비용을 들여 인프라에 상당한 투자를 해야 했습니다. 2012년 연방 선거를 준비할 때 LWVEF는 트래픽 변동을 지원할 수 있는 유연성과 더불어 비용 효율적이고 안정적이며 확장 가능한 호스팅 솔루션으로 이전하길 원했습니다. 호스팅 솔루션은 선거일에 5십만 명 정도의 고유 방문자를 지원하고 선거가 종료되면 축소할 수 있어야 했습니다. "클라우드로 이전하려는 결정은 명확했습니다."라고 LWVEF의 선임 이사인 Jeanette Seneca는 말합니다. "다른 호스팅 플랫폼에서 이러한 서비스를 구축해야 했다면 비용이 3~4배 정도 더 들었을 것입니다."

비용, 지원 옵션, 확장의 용이성 및 안정성에 대한 제안을 검토한 후 LWVEF는 Amazon Web Services(AWS)를 선택했습니다. "AWS는 정확히 우리가 필요한 서비스입니다. 호스팅 솔루션이 원활하게 확장됩니다."라고 Senecal은 말합니다.

LWVEF는 Amazon Relational Database Service(RDS)를 사용하여 2개의 데이터베이스를 구축했습니다. 이 팀에서는 Amazon Simple Storage Service(S3)를 사용하여 현지 League에서 제작하고 VOTE411.org를 통해 공유되는 1200 투표자 안내서와 기타 자료를 저장합니다. Amazon S3를 사용하여 파일을 저장함으로써 이 팀에서는 새로운 Amazon Elastic Compute Cloud(EC2) 인스턴스에서 계속해서 해당 파일을 사용할 수 있도록 하면서 Drupal 인터페이스를 통해 데이터를 업로드할 수 있습니다. New Mill Media는 PHP를 지원하는 AWS Elastic Beanstalk에 웹 애플리케이션을 배포했고 Amazon EC2를 사용하여 수요에 따라 확장합니다.

Leage of Women Voters Architecture Diagram

그림 1. AWS 기반 LWVEF 웹 사이트 아키텍처

New Mill Media는 Drupal로 웹 애플리케이션을 구축하여 Apache 및 PHP 구동 Linux 서버에 배포했습니다. 해당 데이터베이스는 Amazon RDS상에 구현된 MySQL이었습니다. LWVEF는 Amazon CloudWatch를 사용하여 사용을 모니터링합니다. 피크 사용 기간에는 LWVEF 팀이 Apache JMeter를 사용하여 가용성과 로드 시간을 추적했습니다.

VOTE411.org는 2012년 8월에 AWS에서 다시 시작되었습니다. 9월과 10월에는 이 사이트에 하루에 50,000명의 고유 방문자가 방문했고 선거일 하루 전에는 300,000명이, 선거일에는 500,000명이 방문했습니다. 가장 데이터 집약적 페이지는 400ms 이내에 로드되었고, 다른 페이지는 100ms 내에 로드되었습니다. AWS는 8월에 3개였던 서버 인스턴스를 선거일에는 인스턴스 60개로 확장하여 피크 사용 기간에 지속적인 가용성을 제공했습니다.

"AWS를 사용하면서 기존 환경으로는 불가능했을 솔루션을 만들 수 있었습니다."라고 Senecal은 말합니다. "필요에 따라 인스턴스를 생성하여 데이터 정리 및 가져오기를 처리할 수 있었습니다. 다른 호스트를 사용했다면 솔루션을 이렇게 빠르게 생성할 수 없었을 것입니다."

LWVEF는 AWS를 사용함으로써 사이트를 신속하게 시작 및 실행할 수 있었습니다. 따라서 조직은 개발을 시작하기 전에 일정 수의 서버를 지정할 필요가 없어졌습니다. "필요에 따라 확장 또는 축소할 수 있으므로 개발자는 필요한 서버 수를 미리 예측할 필요가 없었습니다."라고 Senecal은 말합니다. "다른 환경에서는 개발하는 데 몇 주가 더 걸렸을 것입니다."

AWS는 LWVEF의 성능 튜닝에 매우 중요한 역할을 합니다. "우리는 Amazon EC2 인스턴스를 사용하여 로드 테스트를 수행합니다."라고 Senecal은 말합니다. "이에 따라 사이트를 테스트하고, 설정을 조정한 후, 다시 테스트하기가 정말 쉬워졌습니다. 사이트가 시작된 후에는 사이트에 대한 변경 사항이 발생하면 다른 로드 테스트가 실행되었습니다. AWS Elastic Beanstalk에서는 라이브 환경과 일치하는 새로운 환경을 쉽게 생성할 수 있었습니다."

이 팀에서는 다른 LWV 웹 사이트를 호스팅하기 위해 AWS를 살펴보고 있습니다.

AWS 클라우드를 사용하여 웹을 호스팅하는 데 대한 자세한 정보는 http://aws.amazon.com/web-mobile-social/을 참조하십시오.