297.2. 옵션
SEDA 구성 요소는 아래에 나열된 6 가지 옵션을 지원합니다.
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
queueSize (advanced) | SEDA 대기열의 기본 최대 용량(즉, 보유할 수 있는 메시지 수)을 설정합니다. | 1000 | int |
concurrentConsumer (consumer) | 기본 동시 스레드 처리 교환 수를 설정합니다. | 1 | int |
defaultQueueFactory (advanced) | 기본 큐 팩토리를 설정합니다. | BlockingQueueFactory | |
defaultBlockwhenFull (producer) | 전체 SEDA 큐에 메시지를 보내는 스레드가 큐의 용량이 더 이상 소진되지 않을 때까지 차단됩니다. 기본적으로 큐가 가득 다는 것을 나타내는 예외가 발생합니다. 이 옵션을 활성화하면 호출 스레드가 대신 차단되고 메시지가 수락될 때까지 기다립니다. | false | boolean |
defaultOfferTimeout (producer) | 전체 SEDA 큐에 메시지를 보내는 스레드가 큐의 용량이 더 이상 소진되지 않을 때까지 차단됩니다. 기본적으로 큐가 가득 다는 것을 나타내는 예외가 발생합니다. 이 옵션을 활성화하면 구성된 타임아웃을 블록 케이스에 추가할 수 있습니다. java 큐의 .offer(timeout) 방법 사용 | long | |
resolveProperty Placeholders (advanced) | 구성 요소 시작 시 속성 자리 표시자를 자체적으로 확인해야 하는지 여부입니다. String 유형의 속성만 속성 자리 표시자를 사용할 수 있습니다. | true | boolean |
SEDA 끝점은 URI 구문을 사용하여 구성됩니다.
seda:name
다음 경로 및 쿼리 매개변수를 사용합니다.
297.2.1. 경로 매개변수(1 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
name | 필요한 큐 이름 | 문자열 |
297.2.2. 쿼리 매개변수(17 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
크기 (일반) | SEDA 대기열의 최대 용량(즉, 보유할 수 있는 메시지 수)입니다. 기본적으로 SEDA 구성 요소에 설정된 defaultSize를 사용합니다. | 1000 | int |
bridgeErrorHandler (consumer) | Camel 라우팅 오류 처리기에 소비자를 브리징할 수 있습니다. 즉, 소비자가 들어오는 메시지를 선택하려고 하는 동안 발생한 모든 예외가 이제 메시지로 처리되고 라우팅 오류 처리기에서 처리됩니다. 기본적으로 소비자는 org.apache.camel.spi.ExceptionHandler를 사용하여 WARN/ERROR 수준에서 기록되고 무시됩니다. | false | boolean |
concurrentConsumer (consumer) | 교환을 처리하는 동시 스레드 수입니다. | 1 | int |
exceptionHandler (consumer) | 사용자가 사용자 지정 ExceptionHandler를 사용하도록 하려면 다음을 수행합니다. bridgeErrorHandler 옵션이 활성화되어 있으면 이 옵션이 사용되지 않습니다. 기본적으로 소비자는 WARN/ERROR 수준에서 기록되고 무시됩니다. | ExceptionHandler | |
exchangePattern (consumer) | 교환을 생성할 때 기본 교환 패턴을 설정합니다. | ExchangePattern | |
limitConcurrentConsumers (consumer) | concurrentConsumers 수를 최대 500으로 제한할지 여부입니다. 끝점이 더 큰 숫자로 구성된 경우 기본적으로 예외가 발생합니다. 이 옵션을 비활성화하여 검사를 비활성화할 수 있습니다. | true | boolean |
multipleConsumer (consumer) | 여러 소비자가 허용되는지 여부를 지정합니다. 활성화된 경우 게시-서브스크립션 메시징에 SEDA를 사용할 수 있습니다. 즉, SEDA 큐에 메시지를 보내고 각 소비자가 메시지의 사본을 수신하도록 할 수 있습니다. 활성화하면 이 옵션을 모든 소비자 끝점에 지정해야 합니다. | false | boolean |
pollTimeout (consumer) | 폴링할 때 사용되는 제한 시간입니다. 시간 초과가 발생하면 소비자는 실행을 계속할 수 있는지 여부를 확인할 수 있습니다. 더 낮은 값을 설정하면 소비자가 종료 시 더 빠르게 반응할 수 있습니다. | 1000 | int |
purge WhenStopping (consumer) | consumer/route를 중지할 때 작업 대기열을 제거할지 여부입니다. 이렇게 하면 큐의 보류 중인 메시지가 삭제되므로 더 빨리 중지할 수 있습니다. | false | boolean |
Block WhenFull (producer) | 전체 SEDA 큐에 메시지를 보내는 스레드가 큐의 용량이 더 이상 소진되지 않을 때까지 차단됩니다. 기본적으로 큐가 가득 다는 것을 나타내는 예외가 발생합니다. 이 옵션을 활성화하면 호출 스레드가 대신 차단되고 메시지가 수락될 때까지 기다립니다. | false | boolean |
discardIfNoConsumers (producer) | 생산자가 활성 소비자 없이 큐로 보낼 때 메시지를 삭제할지 여부(투어에 메시지를 추가하지 않음). discardIfNoConsumers 및 failIfNoConsumers 중 하나만 동시에 활성화할 수 있습니다. | false | boolean |
failIfNoConsumers (producer) | 활성 소비자 없이 큐로 보낼 때 예외를 throw하여 생산자가 실패할지 여부입니다. discardIfNoConsumers 및 failIfNoConsumers 중 하나만 동시에 활성화할 수 있습니다. | false | boolean |
offerTimeout (producer) | 대기열이 가득 차면 offerTimeout(밀리초)을 블록 케이스에 추가할 수 있습니다. 0 또는 음수 값을 사용하여 시간 제한을 비활성화할 수 있습니다. | long | |
시간 초과 (producer) | SEDA 생산자가 비동기 작업이 완료될 때까지 대기하는 시간(밀리초)입니다. 0 또는 음수 값을 사용하여 시간 제한을 비활성화할 수 있습니다. | 30000 | long |
waitForTaskToComplete (producer) | 호출자가 비동기 작업이 완료될 때까지 대기해야 하는지 여부를 지정하는 옵션입니다. 지원되는 세 가지 옵션은 Always, Never 또는 IfReplyExpected입니다. 처음 두 값은 자동으로 설명될 수 있습니다. 마지막 값인 IfReplyExpected는 메시지가 Reply 기반인 경우에만 대기합니다. 기본 옵션은 IfReplyExpected입니다. | IfReplyExpected | WaitForTaskToComplete |
대기열 (고급) | 엔드포인트에서 사용할 큐 인스턴스를 정의합니다. 이 옵션은 사용자 지정 큐 인스턴스를 사용하려는 드문 사용 사례에만 해당됩니다. | BlockingQueue | |
동기 (고급) | 동기 처리를 엄격하게 사용해야 하는지 또는 Camel이 비동기 처리를 사용할 수 있는지 여부를 설정합니다(지원되는 경우). | false | boolean |