2013-05-02 1 views
3

나는 Heroku가 호스팅하는 환경에서 트래픽이 상당히 적은 일부 Facebook 앱을 운영 해왔다.Heroku 1x vs 2x web dynos

2 개의 PHP 파일 (한 페이지 앱과 데이터에 대한 AJAX 진입 점)을 사용하는 간단한 앱입니다. 매우 간단하며 서버 메모리에 대한 실질적인 요구가 없습니다. 대부분의 리소스가 이미지 및 CPU 부하 측면에서 가장 무거운 것은 웹 API에 대한 컬 (Curl) 요청이거나 데이터를 얻기위한 데이터베이스 호출입니다.

트래픽이 많고 서버 동시성 (평균 10-20 개의 dynos)에 대한 요구 때문에 최대 성능을 위해 응용 프로그램을 구성하는 방법에 대한 연구를 수행 한 결과 가장 큰 병목 현상은 Heroku의 제한 사항에서 비롯된 것으로 나타났습니다 기본 boot.shby defaultMaxClients=1을 설정하는 아파치 배포 스크립트.

이것은 Apache를 1 thread for handling HTTP requests으로 제한하는 효과가 있습니다.

새롭게 개선 된 2x dynos은 두 배의 비용과 RAM 및 CPU 성능의 두 배를 약속합니다.

이제 병목 현상이 HTTP 요청을 처리 할 때 RAM이 크게 달라지지는 않지만 새로운 다이노스가 MaxClients=2 (havent는 아직 확인할 수 없음)으로 설정한다고 가정하고, 나는 평소 사용하는 1x 다이노 스의 양보다 절반의 많은 2x 다이 노스로 내 앱을 실행하는 것이 더 나을지 궁금해. 누구나 대답을 알고 있습니까?

+1

이 재미있을 수 있습니다 http://serverfault.com/questions/415946/maxclients-exceeded-on-heroku ... – Detached

답변

3

2x dyno로 변경해도 MaxClients가 변경되지는 않습니다. 둘 이상의 동시 요청을 지원하려면 응용 프로그램 구성을 변경해야합니다.

관련 문제