[발 번역] 핀터리스트 아키텍처에 대한 설명 추가 – 180만명의 방문자, 10배 성장, 12명의 직원, 410TB의 데이터

해당 글은 http://highscalability.com/blog/2012/5/21/pinterest-architecture-update-18-million-visitors-10x-growth.html 글을 발 번역 한 것입니다. 오역에 주의하세요. 이번에 라쿠텐에서 핀터리스트의 가치도 대략 1조원 정도로 보고 몇백억을 투자했다는데, 여러모로 핀터리스트와 인스타그램은 유사한듯 합니다.

 

해당 글은 지난 포스트 A Short on the Pinterest Stack for Handling 3+ Million Users 와  Pinterest growth driven by Amazon cloud scalability 에 대한 업데이트 버전입니다. ( 역자 주: 간단히 요약하면 핀터리스트의 서버는 아마존 EC2에서 돌고 S3에 410TB의 데이터가 있음, 150대의 웹서버, 90대의 멤캐쉬 서버 35대의 내부 서버, 64대의 m/s DB서버 피크시간에는 시간당 $52, 밤에는 $15 를 사용하고 있으며, 결국 클라우드 서비스가 아니었으면 운영하기 힘들었을 것이다라는 게 핵심입니다.)

 

핀터레스트의 스토리는 인스타그램과 매우 유사합니다.  가파른 성장, 많은 유저, 많은 데이터, 몇명의 직원으로 모든 것이 클라우드 위에서 돌아갑니다.(역자 주: 아마존을 사용하는 것으로 추측 가능합니다. 개인적으로 tumblr도 유사하다는 느낌이 듭니다.)

 

핀터리스트와 인스타그램 둘 다, 과학과 기술 위대한 발전을 만들지는 못했지만,  실리콘 밸리의 혁신이 부족한 상황이라는 의미보다는 일반적인 환경에서 더욱 쉽게 성공할 수 있다는 지표입니다.  사용자 수는 거대하고, 평가액은 매우 높습니다. 우리는 기본적으로 성장을 지탱해줄 수 있는 기초 기술의 혁신을 바랍니다. 혁신은 좀 더 미묘합니다. 만약 제대로 올바른 아이디어를 실행할 수 있다면, 요새는 이러한 성장을 하기가 쉽습니다. 그리고 거기에 익숙해져야 합니다.

 

핀터레스트의 최근 현황은 다음과 같습니다.:

  • S3에 8백만 개의 오브젝트가 410TB 의 유저 데이터를 저장하고 있습니다. 8월에 비하면 10배나 늘어났고, EC2 instance는 3배 더 늘어났습니다.(역자 주: 피크 타임에 한 시간에 %52 달러라고 했으니, 하루에 최대 $1248 씩 사용한다는 뜻입니다. 한달이면 …)
  • 작년 12월 기준으로 12명의 직원이 있습니다. 클라우드를 사용하기 때문에, 작은 규모의 팀에서 이런 급격한 성장을 처리할 수 있었습니다.
  • 사용 경비를 절약하고 있습니다. 대부분의 트래픽이 점심부터 저녁까지에 집중됩니다. 그래서 밤에는 피크 타임의 40% 정도의 인스턴스만 사용하고, 피크 시간에 $52 정도를 사용하고, 부하가 적을때는 한시간에 $15 정도 사용합니다.
  • 150대의 웹서버가 있습니다.(역자 주: ELB를 사용합니다.)
  • DB의 부하를 줄여주는, 90 대의 메모리 캐시 서버가 있습니다.
  • 35 대의 캐시 서버는 내부 목적으로 사용합니다.
  • 70 대의 마스터 DB가 있고 각각 다른 지역에 백업 DB가 있습니다.
  • Python과 Django 를 이용합니다.
  • 한 DB가 50% 이상 차면, 그 때 확장을 쉽게 하고, 충분한 IO 성능을 위해서샤딩을 하게 됩니다.
  • ELB를 로드 밸런서로 이용합니다. ELB API로 쉽게 장비를 추가하거나 제거할 수 있습니다.
  • 역사상 가장 빨리 성장한 사이트 중에 하나입니다. 3월에 180만명의 유저가 사용했는데, 그전 달 보다 50% 늘어난 것입니다. AWS를 이용했기 때문에 매우 적은 IT 자원을 사용했습니다.
  • 클라우드를 사용하기 때문에 아주 쉽고 싼 가격으로 테스트가 가능합니다. 새로운 서비스를 위해서, 장비를 새로 사는것이 아니라, 큰 비용이 들지 않습니다.
  • Hadoop을 이용한  Elastic Map Reduce 를 데이터 분석 목적으로 사용하는데 한달에 수백 달러 밖에 들지 않습니다.

Related Articles