Composer의 ThingWorx 모델 정의 > 시스템 > 하위 시스템 > 순서가 지정된 이벤트 처리 하위 시스템
순서가 지정된 이벤트 처리 하위 시스템
순서가 지정된 이벤트 처리 하위 시스템은 바인딩 및 바인딩 취소와 같은 이벤트 처리 시 적절한 순서가 유지되도록 하기 위한 것입니다. 하위 시스템은 스레드 풀에 외관을 제공하며 이벤트 처리 하위 시스템과 같은 유사한 조정 매개 변수가 있습니다. 이때 이 풀은 바인딩/바인딩 취소 이벤트에 의해 트리거된 현재 상태 평가에 대해서만 서비스를 제공합니다.
다음 표에 설명된 설정은 시스템의 부하가 높을 때 메모리 공간을 제한하는 기능을 합니다. 설정이 초과되면 장치 상태에 관계없이 사물이 isReportingfalse로 변경합니다(자세한 내용은 아래 표 참조).
설정
설명
이벤트 처리 풀에 할당된 최소 스레드 수
할당될 최소 스레드 수입니다. 이 설정은 스레드 풀의 초기 크기이기도 합니다. 스레드가 유휴 상태가 되면 리소스를 확보하기 위해 스레드가 이 숫자까지 잘립니다.
이벤트 처리 풀에 할당된 최대 스레드 수
할당될 최대 스레드 수입니다. 최대 부하가 이 숫자에 도달하면 풀이 동적으로 풀 크기를 조정합니다.
새 작업 스레드를 추가하기 전 최대 대기열 엔트리
풀이 자체적으로 크기 조정을 수행하기 전에 즉시 처리될 수 있는 최대 작업(현재 상태 평가) 수입니다.
순서별 실행을 보장하기 위한 최대 차단된 작업 수
동일한 장치에 대한 이전 평가가 완료될 때까지 대기하는 동안 대기열에 추가될 수 있는 최대 작업(현재 상태 평가) 수입니다.
처음 세 설정은 반드시 이벤트 처리 하위 시스템에서 공유되어야 합니다.
하위 시스템은 작업이 차단될 수 있는 두 가지 이유를 서로 구분합니다.
모든 평가를 발생하는 순서대로 실시간으로 처리할 만큼 충분한 작업자 스레드가 없습니다. "최대 대기열 엔트리" 설정을 사용하면 이 상황이 발생할 가능성을 제한할 수 있습니다.
또는 동일한 장치가 깜박거리고 있으므로 많은 평가가 필요할 수 있습니다. 다음 바인딩/바인딩 취소 이벤트가 발생하기 전에 평가가 완료되지 않을 경우 첫 번째 평가가 완료될 때까지 두 번째 평가가 대기해야 합니다. "최대 차단된 작업 수" 설정은 이러한 방법으로 중지할 수 있는 평가의 수를 제어합니다.
"최대 대기열 엔트리" 제한을 초과하면 스레드 풀이 자체적으로 풀 크기를 조정하려고 합니다. 크기 조정에 성공하면 새 작업자 스레드가 평가 대기열을 처리합니다.
"최대 스레드 수" 제한으로 인해 크기를 조정할 수 없는 경우 또는 "최대 차단된 작업 수" 제한을 초과할 때마다 스레드 풀이 평가를 거부합니다. 거부된 평가는 추가 처리 없이 즉시 "보고하지 않음" 상태가 됩니다.
고가용성 환경에서 isReporting 속성이 예상대로 동작하지 않을 수 있습니다. 이는 고가용성 컨텍스트에서 AlwaysON 요청은 Connection Server에 의해 라운드 로빈 방식으로 라우팅되기 때문입니다. 따라서 결과적으로 다른 노드 또는 대기열에 의해 BIND/UNBIND 이벤트가 실행됩니다.
도움이 되셨나요?