16.4. 고급 Cryostat 구성


16.4.1. IO 구성

PAXWEB-1255부터 리스너가 사용하는 XNIO 작업자 및 버퍼 풀의 구성을 변경할 수 있습니다. undertow.xml 템플릿에는 일부 IO 관련 매개변수의 기본값을 지정하는 섹션이 있습니다.

<!-- Only "default" worker and buffer-pool are supported and can be used to override the default values used by all listeners
    buffer-pool:
     - buffer-size defaults to:
        - when < 64MB of Xmx: 512
        - when < 128MB of Xmx: 1024
        - when >= 128MB of Xmx: 16K - 20
     - direct-buffers defaults to:
        - when < 64MB of Xmx: false
        - when >= 64MB of Xmx: true
    worker:
     - io-threads defaults to Math.max(Runtime.getRuntime().availableProcessors(), 2);
     - task-core-threads and task-max-threads default to io-threads * 8
-->

<!--
<subsystem xmlns="urn:jboss:domain:io:3.0">
    <buffer-pool name="default" buffer-size="16364" direct-buffers="true" />
    <worker name="default" io-threads="8" task-core-threads="64" task-max-threads="64" task-keepalive="60000" />
</subsystem>
-->

다음 buffer-pool 매개변수를 지정할 수 있습니다.

buffer-size
IO 작업에 사용되는 버퍼의 크기를 지정합니다. 지정하지 않으면 사용 가능한 메모리에 따라 크기가 계산됩니다.
direct-buffers
java.nio.ByteBuffer#allocateDirect 또는 java.nio.ByteBuffer#allocate를 사용해야 하는지 여부를 결정합니다.

다음 작업자 매개변수를 지정할 수 있습니다.

io-threads
작업자에 대해 생성할 I/O 스레드 수입니다. 지정하지 않으면 스레드 수가 CPU 수 × 2로 설정됩니다.
task-core-threads
코어 작업 스레드 풀의 스레드 수입니다.
task-max-threads
작업자 작업 스레드 풀의 최대 스레드 수입니다. 지정하지 않으면 최대 스레드 수가 CPU 수 × 16으로 설정됩니다.

16.4.2. 작업자 IO 구성

Cryostat 스레드 풀과 해당 이름은 서비스별 또는 번들 기준으로 구성할 수 있으므로 Hawtio 콘솔에서 모니터링하고 디버깅을 보다 효율적으로 수행할 수 있습니다.

번들 블루프린트 구성 파일(일반적으로 Maven 프로젝트의 src/main/resources/OSGI-INF/blueprint 디렉터리에 저장됨)에서 다음 예와 같이 workerIOName 및 ThreadPool을 구성할 수 있습니다.

예 16.1. httpu:engine-factory 요소가 workerIOName 및 ThreadPool 구성

<httpu:engine-factory>
    <httpu:engine port="9001">
        <httpu:threadingParameters minThreads="99" maxThreads="777" workerIOThreads="8" workerIOName="WorkerIOTest"/>
    </httpu:engine>
</httpu:engine-factory>

다음의 threadingParameters 를 지정할 수 있습니다.

minThreads
작업자 작업 스레드 풀에 대한 "코어" 스레드 수를 지정합니다. 일반적으로 이는 CPU 코어당 최소 10개 이상 높은 수준이어야 합니다.
maxThreads
작업자 작업 스레드 풀에 대한 최대 스레드 수를 지정합니다.

다음 작업자 매개변수를 지정할 수 있습니다.

workerIOThreads
작업자에 대해 생성할 I/O 스레드 수를 지정합니다. 지정하지 않으면 기본값이 선택됩니다. CPU 코어당 하나의 IO 스레드가 적절한 기본값입니다.
workerIOName
작업자의 이름을 지정합니다. 지정하지 않으면 기본 "XNIO-1"이 선택됩니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.