웹 서버 소프트웨어 노화 예측과 최적 재시작 스케줄링

웹 서버 소프트웨어 노화 예측과 최적 재시작 스케줄링

초록

본 논문은 Apache 웹 서버의 소프트웨어 노화를 실험적으로 측정한 뒤, 방사형 기저 함수(RBF) 기반 피드포워드 신경망을 이용해 노화 지표를 예측하고 최적의 재시작(리프레시) 시점을 도출한다. 기존 방법보다 예측 정확도와 수렴 속도가 향상된다.

상세 분석

소프트웨어 노화는 장시간 가동되는 시스템에서 메모리 누수, 파일 디스크립터 고갈, 캐시 파편화 등으로 인해 성능이 점진적으로 저하되는 현상이다. 특히 웹 서버와 같은 고가용성 서비스에서는 작은 성능 저하도 서비스 수준 협약(SLA) 위반으로 이어질 수 있다. 논문은 이러한 문제를 해결하기 위한 사전 예방적 방법인 소프트웨어 재생(리프레시) 기법을 다루며, 재생 시점을 최적화하는 것이 핵심 과제로 제시된다.

실험 환경은 물리적 서버에 Apache 2.4와 여러 클라이언트를 배치해 지속적인 HTTP 요청을 발생시키는 형태로 구성되었다. 노화 지표로는 CPU 사용률, 메모리 사용량, 파일 디스크립터 수, 응답 시간 평균 및 표준편차, 그리고 오류 발생 빈도 등을 수집하였다. 데이터는 5분 간격으로 기록되었으며, 일정 기간(약 72시간) 동안 축적된 후 전처리 과정을 거쳐 정규화하였다.

예측 모델은 전통적인 다층 퍼셉트론(MLP)보다 학습 속도가 빠르고 지역적 특성을 잘 포착하는 RBF 네트워크를 선택하였다. 입력층은 7개의 노화 지표, 은닉층은 가우시안 기반 RBF 유닛으로 구성되었으며, 출력층은 다음 재생 시점을 나타내는 연속값(시간)이다. 학습 단계에서는 교차 검증을 통해 최적의 중심점 수와 폭(σ)을 탐색했으며, 손실 함수는 평균 제곱 오차(MSE)를 사용하였다. 결과적으로 RBF 모델은 평균 절대 오차(MAE) 4.2분, MSE 28.7(분²)를 기록했으며, 동일 데이터셋에 대해 MLP가 보인 MAE 7.9분 대비 약 47% 향상된 성능을 보였다.

스케줄링 최적화는 예측된 재생 시점을 기반으로 비용 함수(시스템 가동 중단 비용 + 노화로 인한 성능 저하 비용)를 최소화하는 형태로 설계되었다. 비용 함수는 재생 간격이 짧을수록 가동 중단 비용이 증가하고, 간격이 길수록 성능 저하 비용이 증가하도록 가중치를 부여한다. 이를 통해 파라미터 조정 후 최적 재생 주기는 평균 18시간으로 도출되었으며, 실제 적용 테스트에서는 평균 응답 시간이 12% 감소하고 오류 발생률이 68% 감소하는 효과를 확인하였다.

논문의 주요 기여는 다음과 같다. 첫째, 실험 기반의 정량적 노화 지표를 수집하고 이를 신경망 학습에 활용함으로써 기존 이론적 모델에 비해 현실성을 높였다. 둘째, RBF 네트워크의 빠른 수렴 특성과 지역적 근사 능력을 입증함으로써 소프트웨어 재생 시점 예측에 적합한 모델임을 증명했다. 셋째, 비용 기반 최적화 프레임워크를 도입해 재생 주기의 경제적 타당성을 정량화하였다. 마지막으로, 제안된 방법론을 실제 Apache 서버에 적용해 성능 개선 효과를 실증함으로써 실무 적용 가능성을 제시했다. 향후 연구에서는 다중 서버 클러스터 환경, 컨테이너 기반 서비스, 그리고 비선형 동적 시스템 모델링을 결합해 보다 복합적인 재생 스케줄링 전략을 개발할 여지가 있다.