Abstract
With the explosive growth of WWW traffic, there is an increasing demand for the high performance Web servers to provide a stable Web service to users. The cluster-based Web server is a solution to core with the heavy access from users, easily scaling the server according to the loads. In the cluster-based Web sewer, a back-end node may not be able to serve some HTTP requests directly because it does not have the requested contents in its main memory. In this case, the back-end node has to retrieve the requested contents from its local disk or other back-end nodes in the cluster. To reduce service latency, we introduce a new prefetch scheme. The back-end nodes predict the next HTTP requests and prefetch the contents of predicted requests before the next requests arrive. We develop three prefetch algorithms bated on some useful information gathered from many clients'HTTP requests. Through trace-driven simulation, the service latency of the prefetch scheme is reduced by 10 ~ 25% as compared with no prefetch scheme. Among the proposed prefetch algorithms, Time and Access Probability-based Prefetch (TAP2) algorithm, which uses the access probability and the inter-reference time of Web object, shows the best performance.
급속히 증가하고 있는 인터넷 트레픽의 절반 이상이 웹 서비스에 관련된 것으로 인터넷에서 웹이 차지하는 비중은 점점 커지고 있다. 증가하는 웹 서비스 요구에 대처하기 위해서 확장성과 가격 대성능비가 우수한 클러스터 웹 서버가 최근 많이 연구되고 있다. 클러스터 웹 서버는 여러 대의 서버 노드로 구성되어 있는데 각 서버 노드에 들어오는 사용자 요구에 대한 응답 데이타가 지역 메모리에 없는 경우, 디스크 접근이나 다른 서버 노드로부터의 데이타 전송이 필요하다. 본 논문에서는 클러스터 기반 웹 서버에서 서비스 지연을 감소시키기 위한 서버 노드간 자료 선인출 기법을 제안하고 이를 위한 설계 방법을 소개한다. 또한, 선인출에 필요한 알고리즘을 제안하고 모의 실험을 통해 제안하는 알고리즘의 성능을 측정하였다. 후변(back-end) 웹 서버에서 수집된 로그를 바탕으로 서비스 지연 시간을 측정한 결과, 노드간 선인출 방법을 사용한 것이 사용하지 않은 경우에 비해 약 10~25% 감소하였다. 이 때, 각 서버 노드의 메모리 크기는 웹 서버 로그로부터 측정된 전체 요구 데이타 크기의 약 10% 정도이다. 제안하는 선인출 알고리즘 중 접근 확률(access probability)과 사용자 요구 사이의 지연 시간을 고려하는 선인출 알고리즘인 IAP2(Time and Access Probability-barred Prefetch) 방법이 가장 좋은 성능을 보였다.