
NGINX Plus 구성 사례
용도 : Load Balancer
NGINX Plus 활용 기능 : Load Balancer / 동적 재구성 / 성능최적화 / 유연한 구성
결과 : 서비스 성능 향상 / 유지보수에 대한 오버헤드 감소
개요
WordPress는 웹 사이트나 블로그를 만드는 데 사용할 수 있는 웹 게시 소프트웨어입니다. 해당 소프트웨어는 모든 사람을 위해 설계되었으며 접근성, 성능, 보안 및 사용 편의성을 강조합니다. 기본 WordPress 소프트웨어는 간단하고 예측 가능하므로 쉽게 시작할 수 있습니다.
도전
2005년에 시작된 WordPress.com은 모든 WordPress.org 사이트와 마찬가지로 공유 호스팅에서 시작되었습니다. 곧 단일 전용 서버로 이동한 다음 두 개의 서버로 이동했습니다. 2005년 후반에 WordPress.com이 일반에 공개되었고 2006년 초에는 라운드 로빈 DNS를 사용하여 트래픽이 분산되면서 4개의 웹 서버로 확장되었습니다. 얼마 지나지 않아 WordPress.com은 두 번째 데이터 센터로 확장되었고 이후 세 번째 데이터 센터로 확장되었습니다. 라운드 로빈 DNS가 로드 밸런싱을 위한 실행 가능한 장기 솔루션이 아니라는 사실이 금방 명백해졌습니다.
F5 BIG-IP 와 같은 하드웨어 어플라이언스는 WordPress.com에 필요한 많은 기능을 제공했지만 전 세계적으로 분산된 12개의 데이터 센터에서 2000개의 서버를 운영하는 Automattic은 기존 오픈 소스 소프트웨어를 기반으로 구축된 다양한 옵션을 평가하기로 결정했습니다. 상용 하드웨어에서 오픈 소스 소프트웨어를 사용하면 최고의 유연성을 제공하고 비용도 절감할 수 있습니다.
“단일 데이터 센터의 장애 조치 구성에서 한 쌍의 유능한 하드웨어 어플라이언스를 구입하는 것은 약간 비쌀 수 있지만 10개의 데이터 센터에 대해 10세트를 구입하고 서비스하는 것은 곧 매우 비쌉니다. ”
처음에 WordPress.com 팀은 사용 편의성과 내장된 SSL 지원 때문에 Pound를 소프트웨어 부하 분산 장치로 선택했습니다. 약 2년 동안 Pound를 사용한 후 WordPress.com에는 다음과 같은 추가 기능과 확장성이 필요했습니다.
- 실시간 트래픽을 중단하지 않고 동적 재구성 기능을 제공합니다.
- 더 나은 상태 확인 메커니즘을 통해 예상치 못한 요청 로드로 인해 애플리케이션 인프라에 과부하가 걸리지 않고 백엔드 오류로부터 원활하고 점진적인 복구가 가능합니다.
- 초당 요청 수와 동시 연결 수 모두에서 측정된 확장성이 향상되었습니다. Pound의 스레드 기반 모델은 인스턴스당 초당 1,000개가 넘는 요청을 안정적으로 처리할 수 없었습니다.
해결책
2008년 4월 Automattic은 모든 WordPress.com 로드 밸런서를 Pound에서 NGINX 로 전환했습니다 . 그 전에 Automattic 엔지니어들은 몇 달 동안 Gravatar 용 NGINX를 사용해 왔으며 그 성능과 확장성에 깊은 인상을 받았기 때문에 WordPress.com을 이전하는 것은 자연스러운 다음 단계였습니다. WordPress.com을 NGINX로 전환하기 전에 Automattic은 HAProxy 및 LVS를 포함한 여러 다른 제품을 평가했습니다. Automattic이 NGINX를 선택한 데에는 몇 가지 이유가 있습니다.
- 쉽고 유연하며 논리적인 구성
- 사용자 요청을 중단하지 않고 NGINX 인스턴스를 동적으로 재구성하고 업그레이드하는 기능
- FastCGI, SCGI 또는 uwsgi 프로토콜을 통한 애플리케이션 요청 라우팅 NGINX는 추가적인 성능 최적화를 위해 스토리지에서 직접 정적 콘텐츠를 제공할 수도 있습니다.
- 단일 서버에서 WordPress 애플리케이션으로의 초당 10,000개 이상의 실시간 트래픽 요청을 안정적으로 처리할 수 있는 테스트된 소프트웨어만 제공됩니다.
- 최소한의 예측 가능한 메모리 및 CPU 공간. NGINX를 사용하면 로드 밸런싱 서버의 CPU 사용량이 3배 감소했습니다.
결과
2012년 현재 WordPress.com은 36개의 NGINX 로드 밸런서에서 초당 평균 70,000건의 요청과 15Gbps 이상의 트래픽을 처리하고 있어 성장할 여지가 충분합니다. 대부분의 NGINX 로드 밸런서는 초당 약 5,000개의 요청을 처리하며 때로는 초당 최대 20,000개의 요청을 처리하며 약 50,000개의 연결이 설정되어 있습니다.
일반적인 하드웨어 구성은 Debian Linux 6.0을 실행하는 하이퍼 스레딩, 8~12GB RAM을 갖춘 Dual Xeon 5620 8코어 CPU입니다. 고가용성 설정의 일환으로 WordPress.com은 이전에 Wackamole/Spread를 사용했지만 최근 Keepalived로 마이그레이션하기 시작했습니다. NGINX 기반 웹 가속 및 로드 밸런싱 계층 전반에 걸친 인바운드 요청의 균일한 배포는 DNS 라운드 로빈 메커니즘을 기반으로 합니다.
웹 가속, 로드 밸런싱 및 트래픽 관리 솔루션으로 NGINX를 성공적으로 배포한 후 WordPress.com은 최근 모든 애플리케이션 백엔드 서버에 걸쳐 Litespeed에서 NGINX로 마이그레이션했습니다.
PHP용 FPM(FastCGI Process Manager)과 결합된 NGINX를 사용하면 5명으로 구성된 자동화 시스템 팀에 대한 제어 능력이 향상되고 구성이 쉬워지며 추가 유지 관리 오버헤드가 발생하지 않습니다.
워드프레스 소개
WordPress.com은 Automattic에서 호스팅하고 지원하는 WordPress의 클라우드 버전입니다.
WordPress.com은 3,300만 개 이상의 사이트를 제공하며 매달 3억 3,900만 명 이상의 사람들을 34억 페이지로 끌어들이고 있습니다. 2008년 4월 이후 WordPress.com의 페이지 조회수는 약 4.4배 증가했습니다. WordPress.com VIP는 CNN의 Political Ticker, NFL, Time Inc의 The Page, People Magazine의 Style Watch, Flickr 및 KROQ의 기업 블로그 등을 포함한 많은 인기 사이트를 호스팅합니다. Automattic은 전 세계적으로 분산된 12개의 데이터 센터에서 2000개의 서버를 운영하고 있습니다. WordPress.com 고객 데이터는 여러 위치에 즉시 복제되어 수억 명의 방문자에게 매우 안정적이고 빠른 웹 경험을 제공합니다.
NGINX Plus 구성 사례
용도 : Load Balancer
NGINX Plus 활용 기능 : Load Balancer / 동적 재구성 / 성능최적화 / 유연한 구성
결과 : 서비스 성능 향상 / 유지보수에 대한 오버헤드 감소
개요
WordPress는 웹 사이트나 블로그를 만드는 데 사용할 수 있는 웹 게시 소프트웨어입니다. 해당 소프트웨어는 모든 사람을 위해 설계되었으며 접근성, 성능, 보안 및 사용 편의성을 강조합니다. 기본 WordPress 소프트웨어는 간단하고 예측 가능하므로 쉽게 시작할 수 있습니다.
도전
2005년에 시작된 WordPress.com은 모든 WordPress.org 사이트와 마찬가지로 공유 호스팅에서 시작되었습니다. 곧 단일 전용 서버로 이동한 다음 두 개의 서버로 이동했습니다. 2005년 후반에 WordPress.com이 일반에 공개되었고 2006년 초에는 라운드 로빈 DNS를 사용하여 트래픽이 분산되면서 4개의 웹 서버로 확장되었습니다. 얼마 지나지 않아 WordPress.com은 두 번째 데이터 센터로 확장되었고 이후 세 번째 데이터 센터로 확장되었습니다. 라운드 로빈 DNS가 로드 밸런싱을 위한 실행 가능한 장기 솔루션이 아니라는 사실이 금방 명백해졌습니다.
F5 BIG-IP 와 같은 하드웨어 어플라이언스는 WordPress.com에 필요한 많은 기능을 제공했지만 전 세계적으로 분산된 12개의 데이터 센터에서 2000개의 서버를 운영하는 Automattic은 기존 오픈 소스 소프트웨어를 기반으로 구축된 다양한 옵션을 평가하기로 결정했습니다. 상용 하드웨어에서 오픈 소스 소프트웨어를 사용하면 최고의 유연성을 제공하고 비용도 절감할 수 있습니다.
처음에 WordPress.com 팀은 사용 편의성과 내장된 SSL 지원 때문에 Pound를 소프트웨어 부하 분산 장치로 선택했습니다. 약 2년 동안 Pound를 사용한 후 WordPress.com에는 다음과 같은 추가 기능과 확장성이 필요했습니다.
해결책
2008년 4월 Automattic은 모든 WordPress.com 로드 밸런서를 Pound에서 NGINX 로 전환했습니다 . 그 전에 Automattic 엔지니어들은 몇 달 동안 Gravatar 용 NGINX를 사용해 왔으며 그 성능과 확장성에 깊은 인상을 받았기 때문에 WordPress.com을 이전하는 것은 자연스러운 다음 단계였습니다. WordPress.com을 NGINX로 전환하기 전에 Automattic은 HAProxy 및 LVS를 포함한 여러 다른 제품을 평가했습니다. Automattic이 NGINX를 선택한 데에는 몇 가지 이유가 있습니다.
결과
2012년 현재 WordPress.com은 36개의 NGINX 로드 밸런서에서 초당 평균 70,000건의 요청과 15Gbps 이상의 트래픽을 처리하고 있어 성장할 여지가 충분합니다. 대부분의 NGINX 로드 밸런서는 초당 약 5,000개의 요청을 처리하며 때로는 초당 최대 20,000개의 요청을 처리하며 약 50,000개의 연결이 설정되어 있습니다.
일반적인 하드웨어 구성은 Debian Linux 6.0을 실행하는 하이퍼 스레딩, 8~12GB RAM을 갖춘 Dual Xeon 5620 8코어 CPU입니다. 고가용성 설정의 일환으로 WordPress.com은 이전에 Wackamole/Spread를 사용했지만 최근 Keepalived로 마이그레이션하기 시작했습니다. NGINX 기반 웹 가속 및 로드 밸런싱 계층 전반에 걸친 인바운드 요청의 균일한 배포는 DNS 라운드 로빈 메커니즘을 기반으로 합니다.
웹 가속, 로드 밸런싱 및 트래픽 관리 솔루션으로 NGINX를 성공적으로 배포한 후 WordPress.com은 최근 모든 애플리케이션 백엔드 서버에 걸쳐 Litespeed에서 NGINX로 마이그레이션했습니다.
PHP용 FPM(FastCGI Process Manager)과 결합된 NGINX를 사용하면 5명으로 구성된 자동화 시스템 팀에 대한 제어 능력이 향상되고 구성이 쉬워지며 추가 유지 관리 오버헤드가 발생하지 않습니다.
워드프레스 소개
WordPress.com은 Automattic에서 호스팅하고 지원하는 WordPress의 클라우드 버전입니다.
WordPress.com은 3,300만 개 이상의 사이트를 제공하며 매달 3억 3,900만 명 이상의 사람들을 34억 페이지로 끌어들이고 있습니다. 2008년 4월 이후 WordPress.com의 페이지 조회수는 약 4.4배 증가했습니다. WordPress.com VIP는 CNN의 Political Ticker, NFL, Time Inc의 The Page, People Magazine의 Style Watch, Flickr 및 KROQ의 기업 블로그 등을 포함한 많은 인기 사이트를 호스팅합니다. Automattic은 전 세계적으로 분산된 12개의 데이터 센터에서 2000개의 서버를 운영하고 있습니다. WordPress.com 고객 데이터는 여러 위치에 즉시 복제되어 수억 명의 방문자에게 매우 안정적이고 빠른 웹 경험을 제공합니다.