서버 응답 시간을 모델링하는 데 가장 일반적으로 사용되는 배포는 무엇입니까?


16

서블릿 기반 응용 프로그램이 있는데,이 서블릿에 대한 각 요청을 완료하는 데 걸린 시간을 측정합니다. 평균과 최대 값과 같은 간단한 통계를 이미 계산했습니다. 그러나 좀 더 정교한 분석을 만들고 싶습니다. 그렇게하려면 이러한 응답 시간을 올바르게 모델링해야한다고 생각합니다.

확실히, 응답 시간은 잘 알려진 분포를 따르며, 분포가 올바른 모형이라고 믿을만한 충분한 이유가 있습니다. 그러나 나는이 분포가 무엇인지 모른다.

로그 정규 및 감마가 떠오를 때 실제 반응 시간 데이터 중 하나를 적합하게 만들 수 있습니다. 누구든지 응답 시간을 따라야하는 분포에 대한 견해를 가지고 있습니까?

답변:


17

로그 정규 분포는 내가 일정 기간 동안 모든 사용자 기반을 통해 서버 응답 시간의 대기 시간을 설명에 최선을 찾을 수있는 하나입니다.

시간이 지남에 따라 사이트 대기 시간 분포를 측정하는 사업을하는 적절한 이름의 사이트 lognormal.com 에서 몇 가지 예를 볼 수 있습니다 . 나는 행복한 사용자를 제외하고는 사이트와 제휴하지 않습니다. 분포는 다음과 같습니다. 응답 (예 : 웹 페이지로드) 시간 대 응답 수 :

로그 정규 분포

이 차트에서로드 시간 (X 축) 스케일은 선형입니다. x 축을 로그 스케일로 전환하면 분포의 모양이 피크의 오른쪽에서 더 평범한 모양 (종 모양)으로 나타납니다.


이 PDF는 실제로 Fréchet처럼 보입니다.
usεr11852는 Reinstate Monic이

4

그래프 예.  자세한 내용은 기사를 참조하십시오.

내 연구에 따르면 가장 좋은 모델은 몇 가지 사항에 의해 결정됩니다. 1) 몸, 꼬리 또는 둘 다에 관심이 있습니까? "둘 다"가 아닌 경우 필터링 된 데이터 세트를 모델링하는 것이 더 유용 할 수 있습니다. 2) 당신은 매우 간단하거나 정확한 것을 원하십니까? 즉, 얼마나 많은 매개 변수가 있습니까?

1에 대한 대답이 "둘 다"이고 2가 "간단한"경우 파레토가 가장 잘 작동하는 것 같습니다. 그렇지 않으면 1이 "body"이고 2가 "simple"인 경우 필터링 된 erlang 모델을 선택하십시오. 1이 "둘 다"이고 2가 "정확한"경우 로그 도메인의 데이터에 가우스 혼합 모델이 필요할 수 있습니다.

나는 이것을 최근에 연구하고 있으며, 공공 인터넷에서 주제가 충분히 다루어지지 않았기 때문에이 주제에 대한 연구를 자세히 설명 하는 블로그 게시물을 작성했습니다.


1
차트 주셔서 감사합니다. 당신이 가지고있는 (거의) 트라이 모달 배포판을 기반으로, 나는 이것이 단순한 (단일 서버) 설정이 아니라고 생각합니다. 속도가 느린 미들웨어 또는 백엔드가있는 것 같습니다. 이로 인해 사용자 대면 서버가 잠재적으로 캐시 된 백엔드 서브 시스템이 응답 할 때까지 전체 응답이 느려집니다. 또한 X 및 Y 축이 무엇을 나타내는 지 명확하지 않습니다. 로드 시간 (원래 X 축)과 카운트 (원래 Y 축)를 반전 시켰습니까?
arielf

의견 주셔서 감사합니다! 소스 데이터 셋은 웹 서비스 요청보다 핑과 유사하지만, 3 가지 모달 분포는 주로 두 가지 때문인 것으로 추측합니다. 구성 요소는 TCP 오류 복구 시나리오로 인한 것입니다. 그것은 단지 추측 일뿐입니다 ... 저의 주요 초점은 프로세스와 이론이 아닌 다양한 모델의 경험적 유용성에있었습니다. 그래도 반전 축에 대해 무엇을 묻고 있는지 잘 모르겠습니다 ... 예 : 플롯이 있습니까?
Andrew Charneski

또한 조잡한 그래픽에 대한 사과드립니다. x 축은 마이크로 초이고 y 축은 확률 밀도입니다. (예, 알고 있습니다 ... 죄송합니다 ... 재생산 과학 관련 노트를 참조하십시오.)
Andrew Charneski
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.