-
-
웹 서비스 개발 철저공략 - 가치 있는 서비스를 어떻게 빨리 출시할 것인가? ㅣ 철저공략 시리즈
카츠마 료 외 지음, 김완섭 옮김 / 비제이퍼블릭 / 2014년 4월
평점 :
절판
이 책은 일본에서 웹서비스를 하는 유명 업체의 서비스 개발기에 대한 내용으로 구성되어 있다. 내가 이 책을 선택한 이유는 일본에서의 개발 스타일이 궁금했으며, 우리나라와 비슷한 서비스들이 많기 때문에 서비스를 이해하는데 도움이 될 것으로 판단했다. 
책을 읽으면서 각 서비스들의 공통점들이 있음을 확인했으며, 일본만의 독특한 문화도 어느 정도 느낄 수 있었다. 대략 그 내용은 아래와 같다.
1. 서버 스크립트 : php, ruby
2. DB 서버 : MySQL (Master(갱신형), Slave(참조형) 구조)
3. 캐쉬 서버 : memcached
4. 로드 밸러싱 : L3/4, DNS 라운드 로빙
5. 데이터 압축 : HTTP 1.1 gzip을 활용하여 데이터 축소
6. 라이브러리를 자체 개발하여 사용하는 경우가 많아 효율적이기는 하나 지엽적인 느낌도 있음.
(그림1) 책 내용중에 구성도가 잘되어 있다고 생각되어 첨부해봤습니다.
(그림2) 구글과 같이 비용을 아끼기 위해 직접 서버/랙을 구성한 내용이 이색적이였습니다.
7개의 큰 카테고리로 구성되어 있으며, 각 장은 아래와 같이 구성되어 있다.
1. 린 스타트업 빨리 훑어보기
- 속성으로 린 스타트 업에 대해서 기술적인 관점에서 배워 볼 수 있는 장으로 가치있는 서비스의 빠른 런칭 방안에 대해서 배운다.
- '가설 설정->가설 검증->피봇->루프 회전'를 통한 서비스 가치 상승 및 빠른 출시 전략
2. 쿡패드
- 요리 포털 커뮤니티 사이트 개발기
- 빠른 이미지 전송 전략과 휴대폰 개발 방법
- 서버 개발기 및 쿡패드의 현재
3. 니코니코 동영상
- 동영상에 자막을 오버레이 하는 방법
- 니코니코(싱글벙글) 동영상 버전업별 개발기
- 서버 부하 대책 (웹, DB, memcached, 메시지 서버 튜닝)
- 니코니코 동영상 서비스 현재
4. pixiv
- 사진 SNS
- 서비스 성장에 따른 서버 부하 대책 (스케일업, 스케일아웃 전략)
- 각종 라이브러리 활용으로 서비스 성능 업
5. 라이브도어
- 포털 서비스로 NHN Japan으로 흡수
- 웹서버 및 애플리케이션 서버 설정
- O/R 매퍼 및 memcached, DB 클러스터
6. Yahoo 메일
- 야후 메일 Flex 개발기
- 플래시와 HTML 하이브리드 (Flex 컴포넌트, HTMLFloat 구조, 종횡 스크롤, 로딩 고속화)
- 메모리 관리 기법 및 Bindable을 사용한 능동적 구현
7. 2채널
- 네트웍 비용을 줄이기 위한 방안 (gzip 사용 방법)
이 책의 단점으로는 어느 정도 시간이 지난 내용이므로 최신 기술이나 일본의 최근 동향에 대해서 알기에는 한계가 있다. 그렇지만 서비스라는 것이 기술도 중요하지만 서비스를 만들고 문제를 해결하는 과정에 대해서 이해하고 대처하는 방법을 배우는 것도 중요한 것이기 때문에 단점을 어느 정도 극복되지 않을까 생각된다.
이 책은 깊이 있는 내용을 다루지는 않지만, 서비스의 아이디어 및 개발 초기부터 발생할 수 있는 문제점을 해결해 가는 과정을 보여줌으로써 스타트업 기업 또는 현재 서버 관리는 하는 관리자가 읽으면 도움이 될 것으로 보인다.
끝으로 이 책을 읽으면서 조금은 생소하지만 나중에 찾아 보면 도움이 될 만한 내용을 키워드로 정리했다. 나도 언젠가는 견고하고 뛰어난 서버를 만들어보고 싶다.ㅎ 
- munin 모니터링
- Solr 검색엔진
- imlib2 이미지 라이브러리
- Varnish 캐시 서버
- Apache 리버스 프록시
- PHP APD
- DB double buffering
- HTML cache (memcached)
- jsonp를 이용한 크로스 도메인
- libjpeg-turbo
- Sledge