메시지 플로우를 설계할 경우 연결할 입력 노드의 터미널을 고려합니다.
모든 입력 노드가 비트랜잭션, 비지속적 메시지를 처리합니다. 내장 입력 노드가 이 방법에 따라 이 메시지와 연관된 실패 및 예외를 핸들링합니다.
메시지 제거에 앞서 Real-timeInput 및 Real-timeOptimizedFlow 노드가 한 번 더 재시도합니다. 즉, 메시지를 다시 검색하여 처리를 시도합니다.
Catch 플로우에서 예외가 생성되는 경우 HTTPInput 및 SCADAInput 노드가 메시지를 failure 터미널로 전달하지 않습니다. 노드가 오류를 로컬 오류 로그에 로그하고 메시지를 제거합니다.
메시지를 제거하는 모든 상황에서 최대 클라이언트 대기 시간 노드 등록 정보에 의해 지정된 시간이 만기될 때까지 HTTPInput 노드가 대기하며 오류를 웹 서비스 클라이언트로 리턴합니다.
이 조치는 아래의 표에 요약되어 있습니다.
오류 이벤트 | failure 터미널이 연결됨 | failure 터미널이 연결되지 않음 | catch 터미널이 연결됨 | catch 터미널이 연결되지 않음 |
---|---|---|---|---|
노드가 내부 오류를 감지함 | Fail 플로우가 오류를 핸들링함 | 노드가 오류를 로그하고 메시지를 제거함 | 적용할 수 없음 | 적용할 수 없음 |
노드가 메시지를 out 터미널에 전달하고 out 플로우에서 예외가 발생함 | 적용할 수 없음 | 적용할 수 없음 | catch 플로우가 오류를 핸들링함 | 노드가 오류를 로그하고 메시지를 제거함 |
노드가 메시지를 catch 터미널에 전달하고 catch 플로우에서 예외가 발생함 | Fail 플로우가 오류를 핸들링함(HTTPInput 또는 SCADAInput이 아님) | 노드가 오류를 로그하고 메시지를 제거함 | 적용할 수 없음 | 적용할 수 없음 |
노드가 메시지를 failure 터미널에 전달하고 fail 플로우에서 예외가 발생함 | 적용할 수 없음 | 적용할 수 없음 | 노드가 오류를 로그하고 메시지를 제거함 | 노드가 오류를 로그하고 메시지를 제거함 |