231.2. 옵션
MQTT 구성 요소는 아래에 나열된 4 가지 옵션을 지원합니다.
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
호스트 (일반) | MQTT 브로커의 URI가 너무 연결됨 - 이 구성 요소는 SSL도 지원합니다. 예를 들어 ssl://127.0.0.1:8883 | 문자열 | |
사용자 이름 (보안) | MQTT 브로커에 대한 인증에 사용할 사용자 이름 | 문자열 | |
암호 (보안) | MQTT 브로커에 대한 인증에 사용할 암호 | 문자열 | |
resolveProperty Placeholders (advanced) | 구성 요소 시작 시 속성 자리 표시자를 자체적으로 확인해야 하는지 여부입니다. String 유형의 속성만 속성 자리 표시자를 사용할 수 있습니다. | true | boolean |
MQTT 끝점은 URI 구문을 사용하여 구성됩니다.
mqtt:name
다음 경로 및 쿼리 매개변수를 사용합니다.
231.2.1. 경로 매개변수(1 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
name | 필수 항목 이름이 아닌 사용할 논리 이름입니다. | 문자열 |
231.2.2. 쿼리 매개변수(39 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
blockingExecutor (일반) | SSL 연결은 setBlockingExecutor 메서드를 호출하여 대신 사용할 executor를 구성하지 않는 한 내부 스레드 풀에 대한 차단 작업을 수행합니다. | executor | |
byDefaultRetain (공용) | MQTT 브로커로 전송된 메시지에 사용할 기본 보존 정책 | false | boolean |
cleanSession (공용) | MQTT 서버가 주제 서브스크립션을 유지하고 클라이언트 세션에 걸쳐 ack 위치를 유지하려면 false로 설정합니다. 기본값은 true입니다. | false | boolean |
ClientID (공용) | 를 사용하여 세션의 클라이언트 ID를 설정합니다. 이는 MQTT 서버가 setCleanSession(false)이 사용되는 세션을 식별하는 데 사용하는 것입니다. ID는 23자 이상이어야 합니다. 기본값은 자동 생성된 ID(소켓 주소, 포트 및 타임스탬프 기반)입니다. | 문자열 | |
connectAttemptsMax (common) | 클라이언트가 서버에 연결하기 위해 처음으로 시도한 경우 오류가 클라이언트에 다시 보고되기 전에 다시 연결하기 전에 최대 다시 연결 시도 횟수입니다. 무제한 시도를 사용하려면 -1로 설정합니다. 기본값은 -1입니다. | -1 | long |
connectWaitInSeconds (common) | Component가 MQTT 브로커에 대한 연결이 설정될 때까지 대기 시간(초) | 10 | int |
disconnectWaitInSeconds (common) | Component가 MQTT 브로커에서 stop()에서 유효한 연결을 기다릴 시간(초) | 5 | int |
디스패치Queue (공용) | HawtDispatch 디스패치 대기열은 연결에 대한 액세스를 동기화하는 데 사용됩니다. setDispatchQueue 메서드를 통해 명시적 큐를 구성하지 않으면 연결에 대한 새 큐가 생성됩니다. 여러 연결이 동기화를 위해 동일한 큐를 공유하도록 하려면 명시적 큐를 설정하는 것이 유용할 수 있습니다. | DispatchQueue | |
호스트 (일반) | MQTT 브로커의 URI가 너무 연결됨 - 이 구성 요소는 SSL도 지원합니다. 예를 들어 ssl://127.0.0.1:8883 | tcp://127.0.0.1:1883 | URI |
keepalive( 공용) | Keep Alive 타이머를 초 단위로 구성합니다. 클라이언트에서 수신한 메시지 간 최대 시간 간격을 정의합니다. 이를 통해 서버는 긴 TCP/IP 시간 초과를 기다리지 않고도 클라이언트에 대한 네트워크 연결이 중단되었음을 감지할 수 있습니다. | short | |
localAddress (common) | 사용할 로컬 InetAddress 및 포트 | URI | |
maxReadRate (공용) | 이 전송에서 데이터를 수신할 초당 최대 바이트를 설정합니다. 이 설정 제한은 비율이 초과되지 않도록 읽습니다. 기본값은 0이며 제한은 비활성화됩니다. | int | |
maxWriteRate (공용) | 이 전송에서 데이터를 전송할 초당 최대 바이트를 설정합니다. 이 설정은 속도가 초과되지 않도록 쓰기를 제한합니다. 기본값은 0이며 제한은 비활성화됩니다. | int | |
mqttQosPropertyName (common) | 개별 게시된 메시지의 교환에서 찾을 속성 이름입니다. 이 값이 설정되어 있는 경우 (At CryostatOnce, AtLeastOnce 또는 ExactlyOnce ) - 해당 QoS는 MQTT 메시지 브로커로 전송된 메시지에 설정됩니다. | MQTTQos | 문자열 |
mqttRetainPropertyName (common) | 개별 게시된 메시지의 교환에서 찾을 속성 이름입니다. 이 값이 설정되면 MQTT 메시지 브로커로 전송된 메시지에 보존 속성이 설정됩니다. | MQTTRetain | 문자열 |
mqttTopicPropertyName (common) | Exchange에서 검색한 이러한 속성 - 게시 | MQTTTopicPropertyName | 문자열 |
publishTopicName (common) | 메시지를 게시하는 기본 주제 | Camel/mqtt/test | 문자열 |
qualityOfService (공용) | 주제에 사용할 서비스 수준의 품질입니다. | AtLeastOnce | 문자열 |
receiveBufferSize (common) | 내부 소켓 수신 버퍼의 크기를 설정합니다. 기본값은 65536 (64k)입니다. | 65536 | int |
reconnectAttemptsMax (common) | 이전에 서버 연결이 설정된 후 오류가 클라이언트에 다시 보고되기 전에 다시 연결 시도의 최대 수입니다. 무제한 시도를 사용하려면 -1로 설정합니다. 기본값은 -1입니다. | -1 | long |
reconnectBackOffMultiplier (공용) | Exponential 백오프는 다시 연결 시도 사이에 사용됩니다. 지수 백오프를 비활성화하려면 1로 설정합니다. 기본값은 2입니다. | 2.0 | double |
reconnectDelay (common) | 첫 번째 다시 연결 시도 전에 ms에서 대기하는 시간입니다. 기본값은 10입니다. | 10 | long |
reconnectDelayMax (공용) | 재연결 시도 사이에 대기하는 최대 시간(ms)입니다. 기본값은 Cryostat입니다. | 30000 | long |
sendBufferSize (공용) | 내부 소켓 전송 버퍼의 크기를 설정합니다. 기본값은 65536 (64k)입니다. | 65536 | int |
sendWaitInSeconds (common) | Component가 예외를 throw하기 전에 게시 메시지를 승인하기 위해 MQTT 브로커의 수신을 대기하는 최대 시간 | 5 | int |
sslContext (공용) | SSLContext 구성을 사용하여 보안을 구성하려면 다음을 수행합니다. | SSLContext | |
subscribeTopicName (common) | 더 이상 사용되지 않는 이러한 항목은 MQTT에서 상속된 속성과 함께 끝점에 설정됩니다. | 문자열 | |
subscribeTopicNames (common) | 메시지에 등록할 쉼표로 구분된 주제 목록입니다. 이 목록의 각 항목은 계층 내에서 특정 패턴과 일치하는 주제를 구독하기 위해 MQTT 와일드카드(및/또는 #)를 포함할 수 있습니다. 예를 들어 계층 내 수준에 있는 모든 항목에 대한 와일드카드이므로 브로커에 주제/하나와 주제/두가 있는 경우 주제/를 사용하여 두 항목을 모두 구독할 수 있습니다. 여기서 고려해야 할 경고는 브로커가 주제/ 3을 추가하면 경로도 해당 주제에서 메시지를 수신하기 시작합니다. | 문자열 | |
trafficClass (공용) | 전송에서 전송된 패킷의 IP 헤더에서 트래픽 클래스 또는 서비스 유형 옥텟을 설정합니다. 기본값은 8입니다. 즉, 트래픽을 처리량에 최적화해야 합니다. | 8 | int |
버전 (공용) | MQTT 버전 3.1.1을 사용하려면 3.1.1으로 설정합니다. 그렇지 않으면 기본값은 3.1 프로토콜 버전입니다. | 3.1 | 문자열 |
willMessage (common) | 보낼 메시지입니다. 기본값은 0 길이 메시지입니다. | 문자열 | |
willQos (공용) | Will 메시지에 사용할 서비스 품질을 설정합니다. 기본값은 AT_MOST_ONCE입니다. | AtMostOnce | QoS |
willRetain (공용) | Will을 retain 옵션을 사용하여 게시하려면 true로 설정합니다. | QoS | |
willTopic (common) | 클라이언트의 연결이 예기치 않은 경우 서버가 클라이언트의 Will 메시지를 지정된 항목에 게시합니다. | 문자열 | |
bridgeErrorHandler (consumer) | Camel 라우팅 오류 처리기에 소비자를 브리징할 수 있습니다. 즉, 소비자가 들어오는 메시지를 선택하려고 하는 동안 발생한 모든 예외가 이제 메시지로 처리되고 라우팅 오류 처리기에서 처리됩니다. 기본적으로 소비자는 org.apache.camel.spi.ExceptionHandler를 사용하여 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | false | boolean |
exceptionHandler (consumer) | 사용자가 사용자 지정 ExceptionHandler를 사용하도록 하려면 다음을 수행합니다. bridgeErrorHandler 옵션이 활성화되어 있으면 이 옵션이 사용되지 않습니다. 기본적으로 소비자는 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | ExceptionHandler | |
exchangePattern (consumer) | 소비자가 교환을 생성할 때 교환 패턴을 설정합니다. | ExchangePattern | |
lazySessionCreation (producer) | Camel 생산자가 시작될 때 원격 서버가 작동하지 않는 경우 예외를 방지하기 위해 지연을 생성할 수 있습니다. | true | boolean |
동기 (고급) | 동기 처리를 엄격하게 사용해야 하는지 또는 Camel이 비동기 처리를 사용할 수 있는지 여부를 설정합니다(지원되는 경우). | false | boolean |