이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 22839|회답: 0

[출처] 【실무 실습】XXL-JOB 분산 작업 스케줄링 플랫폼 사용 및 개발 튜토리얼

[링크 복사]
게시됨 2021. 9. 7. 오후 4:35:50 | | | |
XXL-JOB은 빠른 개발, 간단한 학습, 경량, 그리고 확장이 용이하다는 핵심 설계 목표를 가진 분산 작업 일정 플랫폼입니다. 현재 오픈 소스이며 많은 기업의 온라인 제품군과 연결되어 있으며, 바로 사용할 수 있습니다.
복습:

.net/c# Quartz.NET 원격 작업 스케줄링 [소스 코드 포함]
https://www.itsvse.com/thread-4729-1-1.html

쿼츠 크론트리거가 가장 완전한 구성 설명입니다
https://www.itsvse.com/thread-4573-1-1.html

Quartz.net 간단한 구성 튜토리얼
https://www.itsvse.com/thread-4297-1-1.html

asp.net MVC는 예약된 작업을 실행하기 위해 Quartz.Net 플러그인을 활용합니다
https://www.itsvse.com/thread-3308-1-1.html

GitHub 주소:하이퍼링크 로그인이 보입니다.

공식 문서 주소:하이퍼링크 로그인이 보입니다.

먼저, 소스 코드를 다운로드하세요. 주소:하이퍼링크 로그인이 보입니다.(domestic gitee를 통해 다운로드)

데이터베이스 및 테이블 구조 생성

스크립트 파일 주소:/xxl-job/doc/db/tables_xxl_job.sql스크립트를 MySQL 데이터베이스에 가져오면, 스크립트가 자동으로 xxl_job 데이터베이스가 있는지 판단하고 xxl_job 데이터베이스를 생성하고 해당 테이블 구조를 생성하며 초기 데이터를 삽입합니다. 아래에 나와 있습니다:


프로젝트 열기

Eclipse를 사용해 Maven 프로젝트를 가져오고 Maven으로 컴파일하세요.

소스 코드 구조는 다음과 같습니다:

xxl-job-admin: 디스패치 센터
xxl-job-core: 공통 의존성
xxl-job-executor-samples: 실행 샘플 예시 (적절한 실행 파일을 선택하거나 직접 사용할 수 있으며, 참조하여 기존 프로젝트를 실행 파일로 변환할 수 있습니다)
:xxl-job-executor-sample-springboot:Springboot 버전, Springboot 관리 실행 장치를 통해 이 방법을 권장합니다;
:xxl-job-executor-sample-frameless: 프레임 없는 버전;




xxl-job-admin 스케줄링 센터를 운영하세요


xxl-job-admin 사용하여 MySQL 데이터베이스 연결을 설정하기 위해

/xxl-job/xxl-job-admin/src/main/resources/application.properties 설정 파일을 열고 다음과 같이 설정하세요:


XxlJobAdminApplication.java 파일을 열고 프로젝트를 시작하세요.

다음 주소에서 웹 관리 인터페이스에 접속하세요:http://127.0.0.1:8080/xxl-job-admin, 아래 그림에서 볼 수 있습니다:



기본 로그인 계정 "행정/123456




액추에이터 프로젝트를 실행하세요

xxl-job-executor-sample-springboot 프로젝트를 찾아 application.properties 구성 파일을 다음과 같이 수정하세요:

액추에이터 구성에 대한 공식 상세 설명:

### 디스패치 센터 배치 및 주소 [선택사항]: 디스패치 센터 클러스터에 여러 주소가 있을 경우, 쉼표로 구분합니다. 이 주소를 사용해 "실행 하트 비트"와 "작업 결과를 다시 호출"을 등록합니다. 비어 있으면 자동 등록이 꺼집니다.
xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin
### 액추에이터 통신 토큰 [선택]: 비어 있지 않을 때 활성화됨;
xxl.job.accessToken=
### 액추에이터 앱이름 [선택]: 액추에이터 심박 등록의 그룹 기반 기준; 비어 있으면 자동 등록을 끄세요
xxl.job.executor.appname=xxl-job-executor-sample
### 집행자 등록 [선택 사항]: 먼저 이 구성을 등록 주소로 사용하고, 비어 있을 때는 내장 서비스 "IP:PORT"를 등록 주소로 사용합니다. 이는 컨테이너 유형 실행자, 동적 IP 및 동적 매핑 포트 문제에 대해 보다 유연한 지원을 제공합니다.
xxl.job.executor.address=
### 실행 IP [선택]: 기본값은 비어 있어 자동으로 IP를 얻고, NIC가 멀티카드일 때 지정된 IP를 수동으로 설정할 수 있어 호스트에 묶이지 않고 통신에만 유용합니다. "실행자 등록" 및 "디스패치 센터 요청 및 트리거 작업"의 주소 정보;
xxl.job.executor.ip=
### 액추에이터 포트 번호 [선택 사항]: 0 이하일 경우 자동으로 획득됩니다; 기본 포트는 9999이므로 한 대에 여러 액추에이터를 배치할 때는 서로 다른 액추에이터 포트 구성을 주의해야 합니다.
xxl.job.executor.port=9999
### 실행 실행 로그 파일 저장 디스크 경로 [선택]: 이 경로에 읽기 및 쓰기 권한이 필요합니다; 비어 있으면 기본 경로가 사용됩니다;
xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler
### 트리거 로그 파일 저장 일수 [선택 사항]: 만료된 로그는 자동으로 정리되며, 제한값이 3 이상이어야 합니다. 그렇지 않으면 -1과 같이 자동 청소 기능을 끕니다;
xxl.job.executor.logretentiondays=30


디스패치 센터 관리 플랫폼을 열고, 스케줄러 관리 메뉴를 클릭한 뒤 스케줄러를 추가한 뒤, 앱이름을 xxl-job-executor-itsvse 입력하세요

XxlJobExecutorApplication.java 파일을 열고 아래와 같이 실행기를 실행해 보세요:



xxl-job-executor-sample-springboot 프로젝트는 두 개의 포트를 엽니다. 포트 8081은 외부 인터페이스 서비스용, 포트 9999는 xxl-job-admin 호출(스케줄링 플랫폼과 통신하는 데 사용됨)용입니다.




새로운 일정 작업 생성

Executor 방금 만든 액추에이터를 선택하세요. Cron은 10초 동안 한 번 실행됩니다 (*/10 * * * * ?), 실행 모드에서 "BEAN"을 선택한 후 JobHandler: demoJobHandler를 채우고, 다른 옵션도 자유롭게 채우면 됩니다. 그냥 저장만 하면 됩니다.



목록의 맨 오른쪽에서 작업을 시작한 후, 다음 그림에 보이는 대로 쿼리 로그를 클릭하세요:




디스패치 센터 플랫폼과 실행자의 로그를 통해 작업이 성공적으로 실행되었고, 10초마다 한 번씩 실행되는 것을 확인할 수 있습니다.

(끝)





이전의:Nginx는 이미지에 워터마크를 추가하는 기능을 구현합니다
다음:도커의 리눅스 오버레이 파일 시스템
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com