20장. 배치 애플리케이션 구성


JBoss EAP 7에서는 Cryostat -352에서 정의한 Java 배치 애플리케이션을 지원했습니다. batch-jberet 하위 시스템을 사용하여 배치 애플리케이션을 실행하고 배치 작업을 관리하는 환경을 구성할 수 있습니다.

배치 애플리케이션 개발에 대한 자세한 내용은 JBoss EAP 개발 가이드의 Java Batch Application Development 를 참조하십시오.

20.1. 배치 작업 구성

JBeret 구현을 기반으로 하는 batch-jberet 하위 시스템을 사용하여 배치 작업에 대한 설정을 구성할 수 있습니다.

기본 batch-jberet 하위 시스템 구성은 메모리 내 작업 리포지토리 및 기본 스레드 풀 설정을 정의합니다.

<subsystem xmlns="urn:jboss:domain:batch-jberet:1.0">
    <default-job-repository name="in-memory"/>
    <default-thread-pool name="batch"/>
    <job-repository name="in-memory">
        <in-memory/>
    </job-repository>
    <thread-pool name="batch">
        <max-threads count="10"/>
        <keepalive-time time="30" unit="seconds"/>
    </thread-pool>
</subsystem>
Copy to Clipboard Toggle word wrap

기본적으로 서버 일시 중단 중에 중지된 배치 작업은 서버를 다시 시작할 때 다시 시작됩니다. restart-jobs-on-resume 속성을 false 로 설정하여 대신 작업을 STOPPED 상태로 유지할 수 있습니다.

/subsystem=batch-jberet:write-attribute(name=restart-jobs-on-resume,value=false)
Copy to Clipboard Toggle word wrap

배치 작업 리포지토리스레드 풀에 대한 설정을 구성할 수도 있습니다.

20.1.1. 배치 작업 리포지토리 구성

이 섹션에서는 관리 CLI를 사용하여 배치 작업 정보를 저장하기 위해 메모리 내 및 JDBC 작업 리포지토리를 구성하는 방법을 보여줍니다. 또한 구성 탭에서 Batch 하위 시스템으로 이동하고 왼쪽 메뉴에서 In Memory 또는 JDBC 를 선택하여 관리 콘솔을 사용하여 작업 리포지토리를 구성할 수도 있습니다.

메모리 내 작업 리포지토리 추가

메모리에 배치 작업 정보를 저장하는 작업 리포지토리를 추가할 수 있습니다.

/subsystem=batch-jberet/in-memory-job-repository=REPOSITORY_NAME:add
Copy to Clipboard Toggle word wrap
JDBC 작업 리포지토리 추가

데이터베이스에 배치 작업 정보를 저장하는 작업 리포지토리를 추가할 수 있습니다. 데이터베이스에 연결하기 위한 데이터 소스의 이름을 지정해야 합니다.

/subsystem=batch-jberet/jdbc-job-repository=REPOSITORY_NAME:add(data-source=DATASOURCE)
Copy to Clipboard Toggle word wrap
기본 작업 리포지토리 설정

in-memory 또는 JDBC 작업 리포지토리를 배치 애플리케이션의 기본 작업 리포지토리로 설정할 수 있습니다.

/subsystem=batch-jberet:write-attribute(name=default-job-repository,value=REPOSITORY_NAME)
Copy to Clipboard Toggle word wrap

이 경우 서버를 다시 로드해야 합니다.

reload
Copy to Clipboard Toggle word wrap

20.1.2. 배치 스레드 풀 구성

이 섹션에서는 관리 CLI를 사용하여 배치 작업에 사용할 스레드 풀 및 스레드 팩토리를 구성하는 방법을 보여줍니다. 또한 구성 탭에서 Batch 하위 시스템으로 이동하고 왼쪽 메뉴에서 스레드 풀 또는 스레드 요인을 선택하여 관리 콘솔을 사용하여 스레드 풀스레드 팩토리를 구성할 수도 있습니다.

스레드 풀 구성

스레드 풀을 추가할 때 파티션 작업이 예상대로 실행되도록 예약되므로 항상 3 보다 커야 하는 max-threads 를 지정해야 합니다.

  1. 스레드 풀을 추가합니다.

    /subsystem=batch-jberet/thread-pool=THREAD_POOL_NAME:add(max-threads=10)
    Copy to Clipboard Toggle word wrap
  2. 필요한 경우 keepalive-time 값을 설정합니다.

    /subsystem=batch-jberet/thread-pool=THREAD_POOL_NAME:write-attribute(name=keepalive-time,value={time=60,unit=SECONDS})
    Copy to Clipboard Toggle word wrap
스레드 팩토리 사용
  1. 스레드 팩토리를 추가합니다.

    /subsystem=batch-jberet/thread-factory=THREAD_FACTORY_NAME:add
    Copy to Clipboard Toggle word wrap
  2. 스레드 팩토리에 대해 원하는 특성을 구성합니다.

    • group-name - 이 스레드 팩토리에 대해 생성할 스레드 그룹의 이름입니다.
    • priority - 생성된 스레드의 스레드 우선 순위입니다.
    • thread-name-pattern - 스레드 이름을 만드는 데 사용되는 템플릿입니다. 다음 패턴을 사용할 수 있습니다.

      • %% - 백분율 기호
      • %t - 요소별 스레드 시퀀스 번호
      • % G - 글로벌 스레드 시퀀스 번호
      • % F - 팩토리 순서 번호
      • % I - 스레드 ID
  3. 스레드 팩토리를 스레드 풀에 할당합니다.

    /subsystem=batch-jberet/thread-pool=THREAD_POOL_NAME:write-attribute(name=thread-factory,value=THREAD_FACTORY_NAME)
    Copy to Clipboard Toggle word wrap

    이 경우 서버를 다시 로드해야 합니다.

    reload
    Copy to Clipboard Toggle word wrap
기본 스레드 풀 설정

다른 스레드 풀을 기본 스레드 풀로 설정할 수 있습니다.

/subsystem=batch-jberet:write-attribute(name=default-thread-pool,value=THREAD_POOL_NAME)
Copy to Clipboard Toggle word wrap

이 경우 서버를 다시 로드해야 합니다.

reload
Copy to Clipboard Toggle word wrap
스레드 풀 통계 보기

read-resource 관리 CLI 작업을 사용하여 배치 스레드 풀에 대한 런타임 정보를 볼 수 있습니다. 이 런타임 정보를 보려면 include-runtime=true 매개변수를 사용해야 합니다.

/subsystem=batch-jberet/thread-pool=THREAD_POOL_NAME:read-resource(include-runtime=true)
{
    "outcome" => "success",
    "result" => {
        "active-count" => 0,
        "completed-task-count" => 0L,
        "current-thread-count" => 0,
        "keepalive-time" => undefined,
        "largest-thread-count" => 0,
        "max-threads" => 15,
        "name" => "THREAD_POOL_NAME",
        "queue-size" => 0,
        "rejected-count" => 0,
        "task-count" => 0L,
        "thread-factory" => "THREAD_FACTORY_NAME"
    }
}
Copy to Clipboard Toggle word wrap

런타임 탭에서 배치 하위 시스템으로 이동하여 관리 콘솔을 사용하여 배치 스레드 풀에 대한 런타임 정보를 볼 수도 있습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동