AWS IoT의 대기 시간을 측정해 보았습니다 (2)

AWS IoT의 대기 시간에 대해 마지막 기사을 작성한 후 계속 측정했는데 눈에 띄는 변동이 있음을 알 수 있으므로 추가 게시합니다.

측정 방법


  • 마지막 기사 과 같이 Publish/Subscribe 간의 Latency를 계측했습니다.
  • 측정 간격은 전회의 4초에서 10분으로 변경해, 약 5일간 계측했습니다.



  • 품목
    내용


    도구 실행 환경
    ap-northeast-1 t2.micro Instance

    사용 도구
    nodejs 버전 AWS IoT device sdk

    사용 모듈
    examples/device-example.js에 타임스탬프 추가 및 사용

    대기 시간 계산 방법
    Publish시, Subscribe시 각각에서 타임스탬프를 기록해, 그 차이를 사용


    측정 조건




    품목
    지난번
    이번에


    실행 간격
    4초
    600초

    실행 횟수
    200회 x2
    710회 x2


    결과


  • 각 장치에서 측정값이 현저하게 변화하는 현상이 나타났습니다.
  • 대기 시간이 변경되는 타이밍과 동일한 타이밍에서 장치 = 서버 간의 연결 재 연결이 발생하는 경우를 발견했습니다.
  • 마지막 측정 기간을 통한 평균 대기 시간은 50ms이며 이전 평균 22ms에서 두 배로 증가했습니다.
  • 이번 계측 기간에서는 평균값이 12ms~89ms 사이에서 크게 변동하는 결과가 되었습니다.
  • 다음 차트는 두 개의 서로 다른 장치를 빨간색과 파란색으로 구분하여 보여줍니다.
  • Publish/Subscribe 대기 시간 추이


  • Publish/Subscribe 대기 시간 집계 결과



  • 지난번
    이번에


    평균(Sec)
    0.022
    0.050

    90% 타일(Sec)
    0.032
    0.087


  • Publish/Subscribe 대기 시간 히스토그램



  • 레이턴시의 변동 요인은 여러가지 상상할 수 있습니다만, 이 레벨의 변동은 있는 것이라고 생각하는 것이 좋을 것 같습니다.
    일반적인 사용법에서는 AWS로 왕복하기 위한 회선 지연이 더해지므로 고려해야 합니다.
    어쨌든, Publish/Subscribe의 기본적인 사용법에서는, 유저의 조작감 등에 현저하게 영향을 주는 현저한 지연은 보이지 않았습니다.
    앞으로 기회가 있다면 더 큰 사례도 시도해 보겠습니다.

    지난 기사 : AWS IoT의 대기 시간을 측정해 보았다 (1)

    좋은 웹페이지 즐겨찾기