Sagteware besonderhede:
Weergawe: 2.0
Upload datum: 12 May 15
Lisensie: Gratis
Populariteit: 0
Quartz is 'n oop bron en vrye, volle funksionaliteit werk skedulering diens wat geïntegreer kan word met, of gebruik langs feitlik enige Java EE of Java SE aansoek - van die kleinste stand-alone aansoek om die grootste e-handel stelsel .
Quartz gebruik kan word om 'n eenvoudige of komplekse skedules te skep vir die uitvoering van tiene, honderde, of selfs tien-of-duisende werkgeleenthede; werk waarvan take word gedefinieer as die standaard Java komponente wat feitlik enigiets wat jy kan hulle program om te doen uitgevoer. Die Quartz Scheduler sluit baie onderneming-klas funksies, soos JTA transaksies en groepering.
Eienskappe :
- Runtime omgewings:
- Quartz kan hardloop ingebed in 'n ander vrystaande aansoek
- Quartz kan aangehaal in 'n aansoek bediener (of Servlet houer) en deel te neem in XA transaksies
- Quartz kan hardloop as 'n stand-alone program (binne sy eie Java Virtual Machine), via RMI om gebruik te word
- Quartz kan aangehaal as 'n groep van stand-alone programme (met load-balans en fail-oor vermoëns)
- Job Scheduling:
- Jobs is geskeduleer om uit te voer wanneer 'n gegewe Trigger plaasvind. Snellers geskep kan word met byna kombinasie van die volgende voorskrifte ... enige
- 'n sekere tyd van die dag (om die millisekonde)
- op sekere dae van die week
- op sekere dae van die maand
- op sekere dae van die jaar
- nie op sekere gelys binne 'n geregistreerde kalender dae (soos besigheid vakansiedae)
- herhaal 'n spesifieke aantal kere
- herhaal totdat 'n spesifieke tyd / datum
- onbepaald herhaal
- herhaal met 'n vertraging interval
Wat is nuut in hierdie release:
- Oorsig van die belangrikste veranderinge API
- API metodes wat terugkeer (of neem as parameters) skikkings nou terugkeer (of neem) getikte versamelings. Byvoorbeeld, eerder as getJobGroupNames (): String [] ons het nou getJobGroupNames (): Lys
- Job en Trigger identifikasie is nou gebaseer op JobKey en TriggerKey. Sleutels sluit beide 'n naam en groep. Metodes wat werk op 'n spesifieke werk / snellers nou sleutels as die parameter. Byvoorbeeld, getTrigger (TriggerKey sleutel): Trigger, eerder as getTrigger (String naam String groep):. Trigger
- Trigger is nou 'n koppelvlak, eerder as 'n klas. Net so vir SimpleTrigger, CronTrigger, ens.
- New DSL / bouer gebaseer API vir die konstruksie Werk en Triggers:
- Metodes van TriggerUtils verwant aan maklike konstruksie van die datums is verskuif na nuwe DateBuilder klas, wat gebruik kan word met statiese invoer om mooi te skep Datum gevalle vir sneller begin en einde tye, ens.
- Die StatefulJob koppelvlak is afgekeur ten gunste van nuwe klas-vlak annotasies vir Job klasse (met behulp van beide annotasies produseer gelykstaande aan dié van die ou StatefulJob interface):
- ersistJobDataAfterExecution - dra die skeduleerder om weer te slaan die Job se JobDataMap inhoud na uitvoering voltooi .
- isallowConcurrentExecution - dra die skeduleerder ander gevalle van dieselfde werk (deur JobKey) van die uitvoering toe reeds een is sluit .
- New body:ExecuteInJTATransaction. Hierdie body toe te voeg tot 'n klas opdrag Job Quartz n JTA transaksie begin voor die uitvoering van die werk (en pleeg / rollback na voltooiing / uitsondering). Die opset eiendom wrapJobExecutionInUserTransaction 'van weergawe 1.x nog bestaan, maar die nuwe body kan jy tune die gedrag op per baan, terwyl die eiendom config raak alle werk.
- Beduidende veranderinge aan die gebruik van JobListener en TriggerListener:
- Die opheffing van onderskeid tussen "globale" en "nie-globale" luisteraars
- JobDetails en snellers is nie meer ingestel met 'n lys van name van luisteraars in kennis te stel, in plaas luisteraars identifiseer wat werk / snellers hulle belangstel in.
- Luisteraars is nou opgedra 'n stel van gevalle Matcher -. Wat ooreenstem met die reëls vir werk / snellers hulle wil gebeure ontvang
- Luisteraars word nou beheer deur 'n ListenerManager API, eerder as om direk met die Scheduler API.
- Die SchedulerException klas en die klas hiërargie is skoongemaak.
- DateIntervalTrigger herdoop tot CalendarIntervalTrigger (of meer presies die beton klas is nou CalendarIntervalTriggerImpl).
- Die idee (eiendom) van die "wisselvalligheid" werksgeleenthede en snellers is uitgeskakel.
- New sneller ketsschot opdrag MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY kan 'n sneller gekonfigureer in so 'n manier dat dit selektief geïgnoreer van alle ketsschot hantering. Met ander woorde, sal dit so gou as wat dit kan brand, met geen spesiale hantering - 'n goeie opsie vir die verbetering van prestasie veral met setups dat baie van die een-skoot (nie-herhalende) snellers het .
- metode Trigger se compareTo () nou reg verband hou met sy gelykes () metode, omdat dit vergelyk die sneller se sleutel, eerder as volgende brand tyd. 'N Nuwe Vergelyker wat snellers sorteer volgens vuur tyd prioriteit en die sleutel is bygevoeg as Trigger.TriggerTimeComparator.
- Nuwe funksies:
- Scheduler.clear () metode bied gerieflike (en gevaarlik!) Manier om al die take, snellers en kalenders uit die skeduleerder te verwyder.
- Scheduler.scheduleJobs (Kaart triggersAndJobs, boolean word) metode bied gerieflike grootmaat byvoeging van werk en snellers.
- Scheduler.unscheduleJobs (Lys triggerKeys) metode bied gerieflike grootmaat unscheduling werkgeleenthede.
- Scheduler.deleteJobs (Lys jobKeys) metode bied gerieflike grootmaat skrap werk (en verwante snellers).
- Scheduler.checkExists (JobKey jobKey) en Scheduler.heckExists (TriggerKey triggerKey) metodes bied maklike manier om uniekheid van werk / sneller sleutels (bepaal teenoor ou het van om die werk / sneller haal by die naam en dan kyk of die gevolg was van nul).
- JDBCJobStore kan nou 'n stel van tabelle om gebruik te word deur verskeie afsonderlike skeduleerder gevalle
- JDBCJobStore nou in staat om van die stoor nie-kern Trigger implementering sonder die gebruik van BLOB kolomme, deur die gebruik van die nuwe TriggerPersistenceDelegate koppelvlak, wat kan (opsioneel) word deur implementeerders van tipes persoonlike Trigger geïmplementeer word.
- JDBCJobStore sluit nou 'n SybaseDelegate vir verbeterde verenigbaarheid met Sybase
- Cron uitdrukkings ondersteun nou die vermoë om 'n offset vir "laaste dag van maand" en "laaste weekdag van maand" uitdrukkings spesifiseer. Vir voorbeelde:. "L-3" (drie dae terug van die laaste van die maand) of "L-3W" (naaste weekdag om die dag drie dae terug van die laaste dag van die maand)
- XML lêers bevat skedulering data het nou 'n manier om te spesifiseer sneller begin keer as offsets in die toekoms van die tyd dat die lêer is verwerk (nuttig vir snellers wat nodig het om te begin afvuur geruime tyd nadat die aansoek is van stapel gestuur / ontplooi).
- Van skema:
- XML lêer skema Nou ondersteun spesifiseer die 'n prioriteit 'eiendom van snellers.
- QuartzInitializerListener (en QuartzInitializerServlet) ondersteun nuwe parameter "wag-on-afsluit", wat die Scheduler sal veroorsaak om te wag vir die uitvoering van werk te voltooi voordat gesluit, toe die Servlet houer is un-implementering van die aansoek.
- Added DirectoryScanJob kern poste wat skip met Quartz, ook bygevoeg minimum ouderdom parameter pre-bestaande FileScanJob.
- Bygevoeg vermoë wanneer die gebruik van QuartzInitializerListener of QuartzInitializerServlet om Quartz inisialiseer binne 'n Java EE web aansoek om die ServletContext in die SchedulerContext voeg.
- Miscellaneous:
- Verskeie prestasie verbeteringe, insluitend (maar nie beperk tot):
- Die vermoë om joernaal-verkry snellers wat gereed is om afgedank is, wat die prestasie verbeterings kan voorsiening te maak vir baie besige voorbereiders
- Metodes vir batch toevoeging / verwydering van werk en snellers (sien "Nuwe funksies")
- Triggers het 'n nuwe ketsschot opdrag opsie, MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY, wat nuttig kan wees as jy nie ketsschot vereis hantering vir jou sneller (s), en wil voordeel van 'n prestasie wins te neem
- Verskeie bug fixes, vir die volledige lys te sien die vrystelling notas van Jira: https://jira.terracotta.org/jira/secure/ReleaseNote.jspa?projectId=10282&version=10842
- DBCP is nie meer gebruik word vir die databasis verbinding pooling, is C3PO plaas gebruik word.
- JobFactory implementering nou geïnisialiseer met (geslaag) 'n handvatsel aan die Planner.
- Alle voorbeelde verpak in die? Voorbeelde? directory van die Quartz verspreiding is opgedateer om die gebruik van (demonstreer) die nuwe API te maak vir die definisie van werk en snellers.
Wat is nuut in weergawe 1.6.6:
- paar belangrike foutherstellings
- 'n paar klein verbeterings
Vereistes :
- Java 2 Standard Edition Runtime Environment
Kommentaar nie gevind