XXL-JOB este o platformă distribuită de programare a sarcinilor, având ca obiective de bază dezvoltare rapidă, învățare simplă, ușoară și ușor de scalat. Acum este open source și conectat la liniile de produse online ale multor companii și este gata de folosit din fabrică. Recenzie:
Adresă GitHub:Autentificarea cu hyperlink este vizibilă.
Adresa documentului oficial:Autentificarea cu hyperlink este vizibilă.
Mai întâi, descarcă codul sursă, adresa:Autentificarea cu hyperlink este vizibilă.(Descărcare prin intermediul site-ului intern)
Creează structuri de baze de date și tabele
Adresa fișierului script:/xxl-job/doc/db/tables_xxl_job.sql, importă scriptul în baza de date MySQL, iar scriptul va determina automat dacă există o bază de date xxl_job și va crea automat o bază de date xxl_job, va crea structura corespunzătoare a tabelului și va introduce datele inițiale. Așa cum se arată mai jos:
Deschide proiectul
Folosește Eclipse pentru a importa proiectul Maven și compila-l împreună cu Maven.
Structura codului sursă este următoarea:
xxl-job-admin: Centrul de dispecerat xxl-job-core: Dependențe comune xxl-job-executor-samples: Exemplu de exemplu de executor (selectați versiunea corespunzătoare a executorului, îl puteți folosi direct sau puteți face referire la el și converti un proiect existent într-un executor) :xxl-job-executor-sample-springboot:Versiunea Springboot, prin executorul de management Springboot, se recomandă această metodă; :xxl-job-executor-sample-frameless: versiunea neîncadrată;
Administrează centrul de programare xxl-job-admin
xxl-job-admin pentru configurarea conexiunii la baza de date mysql:
Deschide fișierul de configurare /xxl-job/xxl-job-admin/src/main/resources/application.properties și configurează-l astfel:
Deschide fișierul XxlJobAdminApplication.java și începe proiectul.
Accesați interfața de management web la următoarea adresă:http://127.0.0.1:8080/xxl-job-admin, așa cum se arată în figura de mai jos:
Cont de autentificare implicit "admin/123456”
Rulează proiectul actuatorului
Găsește proiectul xxl-job-executor-sample-springboot și modifică fișierul de configurare application.properties după cum urmează:
Explicație oficială detaliată a configurației actuatorului:
### Implementarea și adresa centrului de dispecerizare [Opțional]: Dacă există mai multe adrese în clusterul centrului de dispecerat, ele sunt separate prin virgule. Executorul va folosi această adresă pentru a înregistra "Bătăile inimii executorului" și "Apelarea înapoi a rezultatului sarcinii". Dacă este gol, înregistrarea automată este dezactivată. xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin ### Token de comunicare cu actuator [opțional]: activat când nu este gol; xxl.job.accessToken= ### Actuator AppName [Opțional]: Baza de grupare pentru înregistrarea bătăilor de inimă a actuatorului; Dacă este gol, dezactivează înscrierea automată xxl.job.executor.appname=xxl-job-executor-sample ### Executor Registration [Opțional]: Folosește această configurație ca adresă de înregistrare mai întâi și folosește serviciul încorporat "IP:PORT" ca adresă de înregistrare când este gol. Aceasta oferă suport mai flexibil pentru executorii de tip container, IP dinamic și probleme de porturi cu mapare dinamică. xxl.job.executor.address= ### IP executor [Opțional]: Implicitul este gol pentru a obține automat IP-ul, iar IP-ul specificat poate fi setat manual când NIC-ul este multi-card, care nu va fi legat de gazdă și este util doar pentru comunicare. Informații de adresă pentru "Executer Registration" și "Dispatch Center Request and Trigger Task"; xxl.job.executor.ip= ### Numărul portului actuator [opțional]: Dacă este mai mic sau egal cu 0, va fi obținut automat; Portul implicit este 9999, așa că atunci când implementezi mai multe actuatoare pe o singură mașină, fii atent la configurarea diferitelor porturi de actuatoare. xxl.job.executor.port=9999 ### Executor Run Log File Storage Disk Path [Opțional]: Trebuie să ai permisiuni de citire și scriere pe această cale; Dacă este goală, se folosește calea implicită; xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler ### Numărul de zile pentru salvarea fișierului de log al declanșatorului [Opțional]: Jurnalele expirate sunt curățate automat, iar valoarea limită este mai mare sau egală cu 3. altfel, de exemplu -1, dezactivează funcția de curățare automată; xxl.job.executor.logretentiondays=30
Deschide platforma de management Dispatch Center, apasă pe meniul Scheduler Management, adaugă un scheduler și completează numele aplicației: xxl-job-executor-itsvse
Deschide fișierul XxlJobExecutorApplication.java și încearcă să pornești executorul așa cum se arată mai jos:
Proiectul xxl-job-executor-sample-springboot va deschide două porturi, portul 8081 este pentru servicii externe de interfață, iar portul 9999 este pentru apelurile xxl-job-admin (folosite pentru a comunica cu platforma de programare).
Creează o nouă sarcină de programare
Executor Selectează actuatorul pe care tocmai l-am creat, Cron va rula o dată la 10 secunde (*/10 * * * * ?), selectează "BEAN" în modul de rulare, completează JobHandler: demoJobHandler și completează celelalte opțiuni după bunul plac, salvează-l.
Începe sarcina în partea dreaptă a listei, apoi apasă pe Jurnalul interogărilor, așa cum se arată în figura următoare:
Prin jurnalele platformei centrului de dispecerat și executorului, puteți vedea că sarcina este executată cu succes, iar sarcina este executată o dată la fiecare 10 secunde.
(Sfârșit)
|