[이전글]에서 이어지는 글이다.

지난 번에 매초마다 클라우드 서버로부터 정보를 조회하여서 5개의 QD를 업데이트하도록 하였더니 HC3의 CPU Util이 100% 가까이 계속 사용되는 것으로 확인이 되었다.

그 후 두 가지 시나리오를 두고 CPU Util을 줄여보려고 했었다. 업데이트는 똑같이 매초마다 이뤄졌다.

  1. PUT /api/devices/{id}가 아닌 QuickApp 구현을 통해 POST /api/devices/{id}/action/{actionName}을 이용해 5개를 업데이트한다.

지속적으로 사용하는 패턴만 사라졌을 뿐, 거의 비슷한 수준까지 CPU를 사용하는 것으로 확인되었다.

  1. 역시 POST /api/devices/{id}/action/{actionName}을 통해 메인이 될 수 있는 QD를 통해, 나머지 QD까지 HC3에서 업데이트하도록 QuickApp을 구현하여 업데이트한다.

대부분 60~70% 사이에서 스파이크 치고 1번 시나리오보다 낮은 수치를 보여준다.

사실 이렇게 짧은 주기로 업데이트를 해야할 이유가 있을까 싶지만,
이번에 HC3가 ARM 기반으로 변경된 점과, zigbee 연결도 지원할 예정인 것과 zigbee의 경우 매 초단위로 전력량 리포트도 가능하다.

참고로 z-wave로 전력 리포팅도 1초 단위로 지속해서 업데이트되는 것은 없을 것이다. z-wave의 네트워크가 그 정도로 heavy한 트래픽을 처리하기에 어려운 것으로 알고 있다.

게다가 이런 식의 QD가 점점 많아진다면 업데이트가 많아질 수 있으며 각 QD의 개발 방식에 따라 어떤식으로 될 지 모르니 이런 것들을 미리 알고 있다면 고려해서 개발할 수 있을 것이다.