그루폰·월마트·야후는 왜 노드JS를 품었나

일반입력 :2014/03/09 08:50    수정: 2014/03/09 13:39

미국 유명 기업들이 자바 스크립트로 서버 애플리케이션을 개발할 수 있게 해주는 프레임워크인 노드JS를 활용한 사례를 공개했다. 그루폰, 월마트, 야후, 페이팔 등이 노드JS를 도입하면서 겪은 시행착오와 극복과정, 성취한 이점 등을 공유했다.

6일(현지시간) 미국 지디넷은 미국 산호세 페이팔본사에서 열린 '노드데이 미트업' 행사 소식을 보도했다.

노드JS는 브라우저에서 돌아가는 앱 개발에 초점이 맞춰진 자바 스크립트의 한계를 서버로까지 확장할 수 있게 해준다는 이유로 개발자들 사이에서 지지 기반이 점점 넓어지고 있는 추세다.

자바스크립트를 사용해 네트워크 애플리케이션을 빠르고 확장성있게 구축할 수 있게 해준다. 데이터 집약적이고, 분산된 기기를 가로지르는 실시간성 애플리케이션 개발에 적합하다.

소셜커머스회사인 그루폰은 노드JS서버를 사용해 분당 5만건의 미국 사용자 요청을 처리하고 있다. 이 회사는 루비온레일스(RoR) 웹애플리케이션 프레임워크를 사용하다 노드JS로 이전했다.

그루폰은 미국 시카고 지역식당 할인권으로 사업을 시작했다. 당시만 해도 적은 수의 사람들이 할인권을 신청하고, 신청자가 적정규모에 이르면 거래가 성사되는 간단한 사업 방식이었다. 이때만 해도 루비온레일스는 훌륭한 선택이었다. 소규모 개발조직으로 쉽고 빠르게 개발할 수 있었고, 새 기능 추가도 간단했기 때문이다.

그러나 서비스 규모가 커지고, 여러 지역에서 다양한 상품과 새 서비스를 제공하게 되면서, 단일 레일스 애플리케이션이 단일 데이터베이스 클러스터에 연결되는 구조로 처리하기 힘들어졌다. 49개 국가, 모바일로 서비스를 확장하면서 더는 레일스로 대응하기 힘들다는 판단을 내렸다.

그루폰은 노드JS를 활용해 완전히 새로운 아키텍처를 짜기에 이른다. 이 회사는 새 아키텍처와 노드JS 프레임워크 적용 후 페이지 읽기속도가 더 적은 하드웨어를 사용하고도 50% 더 빨라졌고, 개발 조직이 다른 조직에 의존하지 않고 새 기능을 빠르게 개발해 추가할 수 있게 됐다고 설명했다.

월마트는 노드JS 서버로 작년말 블랙프라이데이 기간 온라인 트래픽의 53%를 처리했다고 밝혔다. 월마트는 한개의 노드 서버도 죽지 않았으며, 노드 서버의 CPU이용도 약 1%를 맴돌았다고 설명했다.

야후는 분당 168만~200만건의 요청을 관리하는데 노드JS 서버를 사용하고 있다. 현재 200여명의 개발자가 노드JS 코드를 작성하며, 500개의 내부 노드 모듈과 800개 외부 노드 모듈을 만들었다고 밝혔다.

야후는 노드JS의 가장 큰 이점은 속도와 개발의 용이함이라고 설명했다.

웹애플리케이션을 자바에서 노드JS와 자바스크립트로 교체했다고 발표해 업계에 충격을 줬던 페이팔도 발표자를 내보냈다.

페이팔은 노드JS 애플리케이션을 현업 하드웨어에서 실험한 결과 응답시간이 자바보다 평균 35% 단축됐으며, 결과적으로 동일한 페이지가 200마이크로초 더 빨리 표출됐다고 밝혔다.

현재 '어카운트오버뷰' 영역에 노드JS 서버를 적용한 페이팔은 올해말까지 전 영역을 자바에서 노드JS로 교체할 계획이다.

페이팔의 빌 스콧 UI엔지니어링 수석이사는 최근 블로그에서 서버단의 노드JS, 프론트엔드단의 더스트JS(DustJS)로 작성가능한 애플리케이션을 통해 자바스크립트는 우리회사 애플리케이션 개발을 위한 공용어가 됐다라고 말했다.

관련기사

자바스크립트는 때로 규모를 확장했을 때 관리하기 어렵게 만들어진 언어란 공격을 받는다. 이날 미트업에선 대규모 애플리케이션과 서비스를 개발하고, 유지보수를 유지하는 방법에 초점을 맞춰 의견교환이 이뤄졌다.

고인스턴트란 회사의 이안 리빙스턴 엔지니어링 부사장은 노드JS에 기반한 코드를 관리하기 위해 어떤 툴과 정책을 사용하는지 공유했다.