728x90

개요
 OCSP의 인증기관인 Signkorea의 장애 발생 후 OCSP의 오류 발생으로 인한 거래 처리 불가 상태

현상
 OCSP의 인증기관인 Signkorea의 장애 발생 (10분간)
 기관측 조치가 완료되었으나 OCSP의 오류 발생으로 인한 거래 처리 불가 상태

원인
 기관의 장애로 인해 때문에 queue에 서비스들이 기다리게 됨
 다음과 같은 OCSP데몬의 로그로 확인 가능
  "cannot resize thread pool. Resize of thread pool exceeds max pool size."
 기관측 조치가 완료되었으나 OCSP의 오류 발생
  데몬 구조상 먼저 들어온 서비스(timeout 된 유효하지 않은 서비스)를 처리해야 하려고 시도하였기 때문에 일정 시간 동안 유효한 서비스들에 대한 처리를 할 수 없었던 것으로 추정

해결방안
 데몬 재기동 후 정상 처리
  Queue에 쌓여 있는 유효 하지 않은 서비스들과 유효한 서비스 모두 버리고 새로 시작 하기 때문에 정상 동작

 Queue에 쌓이는 서비스의 시작 시간을 활용 하여 timeout 설정
  1. 서비스의 유효 시간을 설정(3초, 5초, 10초 등)
  2. Queue에 서비스를 쌓을 때 시작 시간 추가
  3. 서비스 처리전 시간을 체크하여 시작 시간과 비교
  4. 유효 시간에 맞을 경우 서비스 진행, 유효시간에 맞지 않을 경우 서비스 종료

 

728x90

+ Recent posts