2011년 11월 26일 토요일

SCM - 캐시 서버를 사용해야 하는 경우

원문 : http://jazz.net/blog/index.php/2010/10/04/does-rational-team-concert-support-multisite/

RTC는 WAN-friendliness를 태생부터 고려해서, Eclipse file copy area가 제공하는 local disk cache의 장점을 십분 활용하고, 변경분만을 넣고 뺌으로써 최적화합니다.  초기 loading시에는 streaming과 multi-threading을 통해 서버와의 "통신량"를 줄여줍니다.

RTC에 내장된 "메트로놈" (참고 : The Jazz metronome tool keeps us honest) 을 통해 "WAN" 성능을 측정해 볼 수 있으며, 경험상 200ms 이하 latency 인 경우에는 WAN에서 충분히 사용가능하며 600ms이상인 경우, 파일 동작이 매우 느려집니다.

200ms 이하로 줄일 수 없는 경우라면, 웹 아키텍처에서 제공하는 proxy caching을 활용해 볼 수 있다. IBM / Apache Http / Squid 등 표준 웹 캐싱 테크놀로지(참고 : “Using content caching proxies for Jazz Source Control”) 를 사용할 수 있습니다. SCM 데이터를 가까운 곳에 캐싱함으로써, RTC 클라이언트로 부터의 접근시간을 크게 단축시킬 수 있습니다.

실제로 RTC 개발팀에서는 두개의 caching proxy를 구축했습니다. proxy를 구축하기 전 대부분의 네트워크 용량을 RTC build farm에서 잡아 먹었습니다. 즉 매 빌드시 대략 600MB 데이터를 가져왔고, 하루에 대략 174회의 빌드를 수행했습니다. proxy 구축 후 트래픽의 95%가 감소되었습니다. 그리고, 빌드시 fetch time도 20분에서 4분으로 줄었습니다.

댓글 없음:

댓글 쓰기