242.2. 옵션
Netty4 구성 요소는 아래에 나열된 6 가지 옵션을 지원합니다.
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
maximumPoolSize (advanced) | 사용 중인 경우 EventExecutorGroup의 스레드 풀 크기입니다. 기본값은 16입니다. | 16 | int |
구성 (고급) | 엔드포인트를 생성할 때 NettyConfiguration을 구성으로 사용하려면 다음을 수행합니다. | NettyConfiguration | |
executorService (고급) | 지정된 EventExecutorGroup을 사용합니다. | EventExecutorGroup | |
useGlobalSslContext Parameters (보안) | 글로벌 SSL 컨텍스트 매개 변수를 사용합니다. | false | boolean |
sslContextParameters (보안) | SSLContextParameters를 사용하여 보안을 구성하려면 다음을 수행합니다. | SSLContextParameters | |
resolveProperty Placeholders (advanced) | 구성 요소 시작 시 속성 자리 표시자를 자체적으로 확인해야 하는지 여부입니다. String 유형의 속성만 속성 자리 표시자를 사용할 수 있습니다. | true | boolean |
Netty4 끝점은 URI 구문을 사용하여 구성됩니다.
netty4:protocol:host:port
다음 경로 및 쿼리 매개변수를 사용합니다.
242.2.1. 경로 매개변수 (3 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
프로토콜 | required tcp 또는 udp일 수 있는 프로토콜입니다. | 문자열 | |
host | 호스트 이름 필수. 소비자의 경우 호스트 이름은 localhost 또는 0.0.0.0입니다. 생산자의 경우 호스트 이름은 연결할 원격 호스트입니다. | 문자열 | |
port | 필수 호스트 포트 번호 | int |
242.2.2. 쿼리 매개변수(72 매개변수):
이름 | 설명 | 기본 | 유형 |
---|---|---|---|
연결 해제 (일반) | 사용 후 Netty Channel에서 연결을 해제할지 여부입니다. 소비자와 생산자 모두에 사용할 수 있습니다. | false | boolean |
keepalive( 공용) | 비활성으로 인해 소켓을 종료하지 않도록 설정 | true | boolean |
reuseAddress (common) | 소켓 멀티플렉싱을 용이하게 설정 | true | boolean |
reuseChannel (공용) | 이 옵션을 사용하면 생산자 및 소비자(클라이언트 모드)가 교환 처리 수명 주기 동안 동일한 Netty 채널을 재사용할 수 있습니다. 이 기능은 Camel 경로에서 서버를 여러 번 호출하고 동일한 네트워크 연결을 사용하려는 경우에 유용합니다. 이 옵션을 사용하면 Exchange가 완료될 때까지 채널이 연결 풀로 반환되지 않거나 연결 해제 옵션이 true로 설정된 경우 연결이 끊어집니다. 재사용된 채널은 교환에 NettyConstants#NETTY_CHANNEL 키가 있는 교환 속성에 저장되므로 라우팅 중에 채널을 확보하고 사용할 수도 있습니다. | false | boolean |
동기화 (공용) | 끝점을 단방향 또는 요청으로 설정하도록 설정 | true | boolean |
tcpNoDelay (공용) | TCP 프로토콜 성능을 개선하도록 설정 | true | boolean |
bridgeErrorHandler (consumer) | Camel 라우팅 오류 처리기에 소비자를 브리징할 수 있습니다. 즉, 소비자가 들어오는 메시지를 선택하려고 하는 동안 발생한 모든 예외가 이제 메시지로 처리되고 라우팅 오류 처리기에서 처리됩니다. 기본적으로 소비자는 org.apache.camel.spi.ExceptionHandler를 사용하여 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | false | boolean |
브로드캐스트 (Consumer) | UDP를 통한 멀티 캐스트를 선택하도록 설정 | false | boolean |
clientMode (consumer) | clientMode가 true이면 netty 소비자는 주소를 TCP 클라이언트로 연결합니다. | false | boolean |
재연결 (Consumer) | 소비자의 clientMode에서만 사용되는 경우 소비자는 이 기능이 활성화된 경우 연결 해제 시 다시 연결을 시도합니다. | true | boolean |
reconnectInterval (consumer) | reconnect 및 clientMode가 활성화된 경우 사용됩니다. 재연결을 시도하는 간격(밀리초)입니다. | 10000 | int |
Backlog (consumer) | netty 소비자(서버)에 대한 백로그를 구성할 수 있습니다. 백로그는 OS에 따라 최선의 노력일 뿐입니다. 이 옵션을 200, 500 또는 1000과 같은 값으로 설정하면 수락 대기열이 구성할 수 있는 기간이 TCP 스택에 지시합니다. 이 옵션이 구성되지 않은 경우 백로그는 OS 설정에 따라 다릅니다. | int | |
managerCount (consumer) | netty가 nio 모드에서 작동하면 Netty의 기본 managerCount 매개 변수를 사용합니다. 이는 1입니다. 사용자는 이 작업을 사용하여 Netty의 기본 directorCount를 재정의할 수 있습니다. | 1 | int |
managerGroup (consumer) | NettyEndpoint에서 서버 측의 새 연결을 처리하는 데 사용할 수 있는 BossGroup을 설정합니다. | EventLoopGroup | |
disconnectOnNoReply (consumer) | sync가 활성화된 경우 이 옵션은 회신할 응답이 없는 경우 연결을 해제해야 하는 경우 NettyConsumer를 지정합니다. | true | boolean |
exceptionHandler (consumer) | 사용자가 사용자 지정 ExceptionHandler를 사용하도록 하려면 다음을 수행합니다. bridgeErrorHandler 옵션이 활성화되어 있으면 이 옵션이 사용되지 않습니다. 기본적으로 소비자는 WARN 또는 ERROR 수준에서 기록되고 무시됩니다. | ExceptionHandler | |
exchangePattern (consumer) | 소비자가 교환을 생성할 때 교환 패턴을 설정합니다. | ExchangePattern | |
nettyServerBootstrapFactory (consumer) | 사용자 정의 NettyServerBootstrapFactory 사용 | NettyServerBootstrap Factory | |
NetworkInterface( consumer) | UDP를 사용하는 경우 이 옵션을 사용하여 eth0과 같은 이름으로 네트워크 인터페이스를 지정하여 멀티 캐스트 그룹에 참여할 수 있습니다. | 문자열 | |
noReplyLogLevel (consumer) | sync가 활성화된 경우 이 옵션은 NettyConsumer에 다시 보낼 응답이 없는 경우 사용할 로깅 수준을 지정합니다. | WARN | LoggingLevel |
serverClosedChannel ExceptionCaughtLogLevel (consumer) | 서버(NettyConsumer)가 java.nio.channels.ClosedChannelException을 catch하면 이 로깅 수준을 사용하여 기록됩니다. 이는 클라이언트가 갑자기 연결을 끊을 수 있고 Netty 서버에서 폐쇄된 예외의 플러드를 일으킬 수 있으므로 폐쇄된 채널 예외를 로깅하는 데 사용됩니다. | DEBUG | LoggingLevel |
serverExceptionCaughtLog Level (consumer) | 서버(NettyConsumer)가 예외를 catch하면 이 로깅 수준을 사용하여 기록됩니다. | WARN | LoggingLevel |
Server CryostatrFactory (consumer) | 사용자 지정 Server CryostatrFactory를 사용하려면 다음을 수행합니다. | Server Cryostatr Cryostat | |
usingExecutorService (consumer) | 정렬된 스레드 풀을 사용할지 여부에 관계없이 이벤트가 동일한 채널에서 순서대로 처리되도록 합니다. | true | boolean |
ConnectTimeout (producer) | 소켓 연결을 사용할 수 있을 때까지 대기하는 시간입니다. 값은 밀리초 단위입니다. | 10000 | int |
requestTimeout (producer) | 원격 서버를 호출할 때 Netty 생산자에 시간 제한을 사용할 수 있습니다. 기본적으로 시간 초과는 사용되지 않습니다. 값은 밀리 초 단위이므로 eg 30000은 30초입니다. requestTimeout은 Netty의 ReadTimeoutHandler를 사용하여 시간 초과를 트리거합니다. | long | |
Client CryostatrFactory (producer) | 사용자 정의 Client CryostatrFactory 사용 | Client Cryostatr Cryostat | |
correlationManager (producer) | 사용자 지정 상관 관계 관리자를 사용하여 netty 생산자와 함께 요청/반복을 사용할 때 요청 및 응답 메시지가 매핑되는 방법을 관리합니다. 이는 요청 및 응답 메시지 모두에 상관 관계 ID가 있는 경우와 같은 응답과 함께 요청을 매핑하는 방법이 있는 경우에만 사용해야 합니다. 이는 netty의 동일한 채널(연결이라고 함)에서 동시 메시지를 멀티플렉싱하려는 경우 사용할 수 있습니다. 이 작업을 수행할 때는 계속 라우팅되기 전에 요청 및 응답 메시지를 연관시킬 수 있는 방법이 있어야 하므로 진행 중인 Camel 교환에 올바른 응답을 저장할 수 있습니다. 사용자 지정 상관 관계 관리자를 빌드할 때 TimeoutCorrelationManagerSupport를 확장하는 것이 좋습니다. 이를 통해 시간 초과 및 구현해야 하는 기타 복잡성도 지원됩니다. 자세한 내용은 producerPoolEnabled 옵션도 참조하십시오. | NettyCamelState CorrelationManager | |
lazyChannelCreation (producer) | Camel 생산자가 시작될 때 원격 서버가 가동되지 않고 실행 중인 경우 예외를 방지하기 위해 채널이 지연될 수 있습니다. | true | boolean |
producerPoolEnabled (producer) | 생산자 풀이 활성화되어 있는지 여부입니다. 중요: 이 기능을 활성화하면 요청/응답을 수행하는 경우에도 생산자에 단일 공유 연결이 사용됩니다. 즉, 응답이 주문되지 않은 경우 상호 연결된 응답에 잠재적인 문제가 발생합니다. 따라서 요청 및 응답 메시지 모두에 상관관계 ID가 있어야 Camel에서 메시지를 계속 처리하는 Camel 콜백에 대한 응답을 적절하게 연관시킬 수 있습니다. 이렇게 하려면 NettyCamelStateCorrelationManager를 상관 관계 관리자로 구현하고 correlationManager 옵션을 통해 구성해야 합니다. 자세한 내용은 correlationManager 옵션도 참조하십시오. | true | boolean |
producerPoolMaxActive (producer) | 풀에서 할당할 수 있는 오브젝트 수(클라이언트에 점검 또는 체크아웃 대기 중) 수를 설정합니다. 제한 없이 음수 값을 사용합니다. | -1 | int |
producerPoolMaxIdle (producer) | 풀의 유휴 인스턴스 수에 제한을 설정합니다. | 100 | int |
producerPoolMinEvictable Idle (producer) | 유휴 오브젝트의 제거 대상이 되기 전에 오브젝트가 풀에 유휴 상태로 남아 있을 수 있는 최소 시간(값)을 설정합니다. | 300000 | long |
producerPoolMinIdle (producer) | Evictor 스레드(활성인 경우)에서 새 오브젝트를 생성하기 전에 생산자 풀에 허용되는 최소 인스턴스 수를 설정합니다. | int | |
udpConnectionlessSending (producer) | 이 옵션은 실제 불과 잊어는 연결을 덜 udp 전송을 지원합니다. 연결된 udp 전송은 수신 포트에서 수신 대기할 수 없는 경우 PortUnreachableException을 수신합니다. | false | boolean |
useByteBuf (producer) | useByteBuf가 true인 경우 netty 생산자는 메시지 본문을 전송하기 전에 메시지 본문을 CryostatBuf로 전환합니다. | false | boolean |
allowSerializedHeaders (advanced) | transferExchange가 true인 경우에만 TCP에 사용됩니다. true로 설정하면 헤더 및 속성의 직렬화 가능 오브젝트가 교환에 추가됩니다. 그렇지 않으면 Camel은 직렬화되지 않은 오브젝트를 제외하고 WARN 수준에서 기록합니다. | false | boolean |
bootstrapConfiguration (advanced) | 이 엔드포인트를 구성하기 위해 사용자 지정 구성된 NettyServerBootstrapConfiguration을 사용하려면 다음을 수행합니다. | NettyServerBootstrap Configuration | |
channelGroup (고급) | 명시적 ChannelGroup을 사용하려면 다음을 수행합니다. | ChannelGroup | |
기본 전송 (고급) | NIO 대신 기본 전송을 사용할지 여부입니다. 네이티브 전송은 호스트 운영 체제를 사용하며 일부 플랫폼에서만 지원됩니다. 사용 중인 호스트 운영 체제에 netty JAR을 추가해야 합니다. 자세한 내용은 http://netty.io/wiki/native-transports.html에서 참조하십시오. | false | boolean |
옵션 (고급) | 옵션을 접두사로 사용하여 추가 netty 옵션을 구성할 수 있습니다. 예를 들어 option.child.keepAlive=false를 사용하여 netty 옵션 child.keepAlive=false를 설정합니다. 사용할 수 있는 옵션은 Netty 설명서를 참조하십시오. | map | |
receiveBufferSize (advanced) | 인바운드 통신 중에 사용할 TCP/UDP 버퍼 크기입니다. 크기는 바이트입니다. | 65536 | int |
receiveBufferSizePredictor (advanced) | 버퍼 크기 예측기를 구성합니다. 자세한 내용은 이 메일 스레드 문서 및 이 메일 스레드에서 참조하십시오. | int | |
sendBufferSize (advanced) | 아웃바운드 통신 중에 사용할 TCP/UDP 버퍼 크기입니다. 크기는 바이트입니다. | 65536 | int |
동기 (고급) | 동기 처리를 엄격하게 사용해야 하는지 또는 Camel이 비동기 처리를 사용할 수 있는지 여부를 설정합니다(지원되는 경우). | false | boolean |
transferExchange (advanced) | TCP에만 사용됩니다. 교환은 육신 대신 전신을 통해 이전할 수 있습니다. 다음 필드가 전송됩니다: 본문, 외부 본문, fault body, In headers, Out headers, fault headers, exchange properties, exchange exception. 이렇게 하려면 개체를 직렬화할 수 있어야 합니다. Camel은 직렬화되지 않은 오브젝트를 제외하고 WARN 수준에서 기록합니다. | false | boolean |
udpByteArrayCodec (advanced) | UDP 전용입니다. Java serialization 프로토콜 대신 바이트 배열 codec를 사용하도록 설정한 경우 | false | boolean |
workercount (고급) | netty가 nio 모드에서 작동하는 경우 Netty의 기본 workerCount 매개변수를 사용합니다. 이 매개변수는 cpu_core_threads x 2입니다. 사용자는 이 작업을 사용하여 Netty의 기본 workerCount를 덮어쓸 수 있습니다. | int | |
workerGroup (고급) | 대표적인 EventLoopGroup을 사인 스레드 풀로 사용합니다. 예를 들어 스레드 풀을 여러 소비자 또는 생산자와 공유하려면 다음을 수행합니다. 기본적으로 각 소비자 또는 생산자에는 x cpu 수 코어 스레드가 2개인 자체 작업자 풀이 있습니다. | EventLoopGroup | |
allowDefaultCodec (codec) | netty 구성 요소는 encoder/decoder가 null이고 textline이 false인 경우 기본 codec를 설치합니다. allowDefaultCodec를 false로 설정하면 netty 구성 요소가 필터 체인의 첫 번째 요소로 기본 codec를 설치할 수 없습니다. | true | boolean |
autoAppendDelimiter (codec) | textline codec를 사용하여 보낼 때 누락된 끝 구분 기호를 자동으로 추가할지 여부입니다. | true | boolean |
디코더 (codec) | 더 이상 사용되지 않는 인바운드 페이로드의 특수 마샬링을 수행하는 데 사용할 수 있는 사용자 지정 ChannelHandler 클래스입니다. | ChannelHandler | |
decoderMaxLineLength (codec) | textline codec에 사용할 최대 행 길이입니다. | 1024 | int |
디코더 (codec) | 사용할 디코더 목록입니다. 쉼표로 구분된 값이 있고 레지스트리에서 값을 조회하도록 문자열을 사용할 수 있습니다. Camel에서 값 앞에 #을 붙여야 합니다. 따라서 Camel은 조회해야 한다는 것을 알고 있습니다. | 문자열 | |
구분 기호 (codec) | textline codec에 사용할 구분 기호입니다. 가능한 값은 LINE 및 NULL입니다. | 라인 | TextLineDelimiter |
인코더 (codec) | 더 이상 사용되지 않는 사용자 지정 ChannelHandler 클래스로 아웃바운드 페이로드의 특수 마샬링을 수행할 수 있습니다. | ChannelHandler | |
인코더 (codec) | 사용할 인코더 목록입니다. 쉼표로 구분된 값이 있고 레지스트리에서 값을 조회하도록 문자열을 사용할 수 있습니다. Camel에서 값 앞에 #을 붙여야 합니다. 따라서 Camel은 조회해야 한다는 것을 알고 있습니다. | 문자열 | |
인코딩 (codec) | textline codec에 사용할 인코딩(Charset name)입니다. 제공되지 않는 경우 Camel은 JVM 기본 Charset을 사용합니다. | 문자열 | |
텍스트 라인 (codec) | TCP에만 사용됩니다. Codec를 지정하지 않으면 이 플래그를 사용하여 텍스트 라인 기반 codec를 나타낼 수 있습니다. 지정하지 않거나 값이 false인 경우 Object Serialization은 TCP를 통해 가정합니다. | false | boolean |
enabledProtocols (보안) | SSL을 사용할 때 활성화할 프로토콜 | TLSv1,TLSv1.1,TLSv1.2 | 문자열 |
keyStoreFile (보안) | 암호화에 사용할 클라이언트 측 인증서 키 저장소 | 파일 | |
keyStoreFormat (보안) | 페이로드 암호화에 사용할 키 저장소 형식입니다. 설정되지 않은 경우 기본값은 JKS입니다. | 문자열 | |
keyStoreResource (보안) | 암호화에 사용할 클라이언트 측 인증서 키 저장소입니다. 기본적으로 classpath에서 로드되지만 classpath:, file: 또는 http: 접두사를 추가하여 다른 시스템의 리소스를 로드할 수 있습니다. | 문자열 | |
NeedClientAuth (보안) | SSL을 사용할 때 서버에 클라이언트 인증이 필요한지 여부를 구성합니다. | false | boolean |
암호 (보안) | SSH를 사용하여 전송된 페이로드를 암호화/암호 해독하는 데 사용할 암호 설정 | 문자열 | |
SecurityProvider (보안) | 페이로드 암호화에 사용할 보안 공급자입니다. 설정되지 않은 경우 기본값은 SunX509입니다. | 문자열 | |
SSL (보안) | 이 끝점에 SSL 암호화가 적용되는지 여부를 지정하는 설정 | false | boolean |
sslClientCertHeaders (보안) | 활성화 및 SSL 모드에서 Netty 소비자는 제목 이름, 발행자 이름, 일련 번호 및 유효한 날짜 범위와 같은 클라이언트 인증서에 대한 정보를 포함하는 헤더로 Camel Message를 보강합니다. | false | boolean |
sslContextParameters (보안) | SSLContextParameters를 사용하여 보안을 구성하려면 다음을 수행합니다. | SSLContextParameters | |
sslHandler (보안) | SSL 처리기를 반환하는 데 사용할 수 있는 클래스에 대한 참조 | SslHandler | |
trustStoreFile (보안) | 암호화에 사용할 서버 측 인증서 키 저장소 | 파일 | |
trustStoreResource (보안) | 암호화에 사용할 서버 측 인증서 키 저장소입니다. 기본적으로 classpath에서 로드되지만 classpath:, file: 또는 http: 접두사를 추가하여 다른 시스템의 리소스를 로드할 수 있습니다. | 문자열 |