Class JobExecutor
java.lang.Object
org.camunda.bpm.engine.impl.jobexecutor.JobExecutor
- Direct Known Subclasses:
ManagedJobExecutor,ManagedJobExecutor,RuntimeContainerJobExecutor,SpringJobExecutor,ThreadPoolJobExecutor
Interface to the component responsible for performing
background work (Jobs).
The JobExecutor is capable of dispatching to multiple process engines,
ie. multiple process engines can share a single Thread Pool for performing Background
Work.
In clustered situations, you can have multiple Job Executors running against the same queue + pending job list.
- Author:
- Daniel Meyer
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected AcquireJobsCommandFactoryprotected AcquireJobsRunnableprotected intThe number of job acquisition cycles without locking failures until the backoff level is reduced.protected intprotected booleanprotected booleanprotected Threadprotected Stringprotected intprotected longprotected intprotected longprotected Stringprotected List<ProcessEngineImpl>protected RejectedJobsHandlerprotected floatprotected int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionMust return an iterator of registered process engines that is independent of concurrent modifications to the underlying data structure of engines.protected voidprotected voidvoidexecuteJobs(List<String> jobIds) Deprecated.abstract voidexecuteJobs(List<String> jobIds, ProcessEngineImpl processEngine) getAcquireJobsCmd(int numJobs) intintDeprecated.getExecuteJobsRunnable(List<String> jobIds, ProcessEngineImpl processEngine) intlongintlonggetName()floatintbooleanhasRegisteredEngine(ProcessEngineImpl engine) booleanisActive()booleanvoidvoidlogAcquiredJobs(ProcessEngineImpl engine, int numJobs) voidvoidlogAcquisitionFailureJobs(ProcessEngineImpl engine, int numJobs) voidlogRejectedExecution(ProcessEngineImpl engine, int numJobs) voidregisterProcessEngine(ProcessEngineImpl processEngine) voidsetAcquireJobsCmdFactory(AcquireJobsCommandFactory acquireJobsCmdFactory) voidsetAutoActivate(boolean isAutoActivate) voidsetBackoffDecreaseThreshold(int backoffDecreaseThreshold) voidsetBackoffTimeInMillis(int backoffTimeInMillis) voidsetCommandExecutor(CommandExecutor commandExecutorTxRequired) Deprecated.voidsetLockOwner(String lockOwner) voidsetLockTimeInMillis(int lockTimeInMillis) voidsetMaxBackoff(long maxBackoff) voidsetMaxJobsPerAcquisition(int maxJobsPerAcquisition) voidsetMaxWait(long maxWait) voidsetProcessEngines(List<ProcessEngineImpl> processEngines) voidsetRejectedJobsHandler(RejectedJobsHandler rejectedJobsHandler) voidsetWaitIncreaseFactor(float waitIncreaseFactor) voidsetWaitTimeInMillis(int waitTimeInMillis) voidshutdown()voidstart()protected abstract voidprotected voidprotected abstract voidprotected voidvoidunregisterProcessEngine(ProcessEngineImpl processEngine)
-
Field Details
-
name
-
processEngines
-
acquireJobsCmdFactory
-
acquireJobsRunnable
-
rejectedJobsHandler
-
jobAcquisitionThread
-
isAutoActivate
protected boolean isAutoActivate -
isActive
protected boolean isActive -
maxJobsPerAcquisition
protected int maxJobsPerAcquisition -
waitTimeInMillis
protected int waitTimeInMillis -
waitIncreaseFactor
protected float waitIncreaseFactor -
maxWait
protected long maxWait -
backoffTimeInMillis
protected int backoffTimeInMillis -
maxBackoff
protected long maxBackoff -
backoffDecreaseThreshold
protected int backoffDecreaseThresholdThe number of job acquisition cycles without locking failures until the backoff level is reduced. -
lockOwner
-
lockTimeInMillis
protected int lockTimeInMillis
-
-
Constructor Details
-
JobExecutor
public JobExecutor()
-
-
Method Details
-
start
public void start() -
shutdown
public void shutdown() -
ensureInitialization
protected void ensureInitialization() -
ensureCleanup
protected void ensureCleanup() -
jobWasAdded
public void jobWasAdded() -
registerProcessEngine
-
unregisterProcessEngine
-
startExecutingJobs
protected abstract void startExecutingJobs() -
stopExecutingJobs
protected abstract void stopExecutingJobs() -
executeJobs
-
executeJobs
Deprecated.Deprecated: useexecuteJobs(List, ProcessEngineImpl)instead- Parameters:
jobIds-
-
logAcquisitionAttempt
-
logAcquiredJobs
-
logAcquisitionFailureJobs
-
logRejectedExecution
-
getProcessEngines
-
engineIterator
Must return an iterator of registered process engines that is independent of concurrent modifications to the underlying data structure of engines. -
hasRegisteredEngine
-
getCommandExecutor
Deprecated.Deprecated: usegetProcessEngines()instead -
setCommandExecutor
Deprecated.Deprecated: useregisterProcessEngine(ProcessEngineImpl)instead- Parameters:
commandExecutorTxRequired-
-
getWaitTimeInMillis
public int getWaitTimeInMillis() -
setWaitTimeInMillis
public void setWaitTimeInMillis(int waitTimeInMillis) -
getBackoffTimeInMillis
public int getBackoffTimeInMillis() -
setBackoffTimeInMillis
public void setBackoffTimeInMillis(int backoffTimeInMillis) -
getLockTimeInMillis
public int getLockTimeInMillis() -
setLockTimeInMillis
public void setLockTimeInMillis(int lockTimeInMillis) -
getLockOwner
-
setLockOwner
-
isAutoActivate
public boolean isAutoActivate() -
setProcessEngines
-
setAutoActivate
public void setAutoActivate(boolean isAutoActivate) -
getMaxJobsPerAcquisition
public int getMaxJobsPerAcquisition() -
setMaxJobsPerAcquisition
public void setMaxJobsPerAcquisition(int maxJobsPerAcquisition) -
getWaitIncreaseFactor
public float getWaitIncreaseFactor() -
setWaitIncreaseFactor
public void setWaitIncreaseFactor(float waitIncreaseFactor) -
getMaxWait
public long getMaxWait() -
setMaxWait
public void setMaxWait(long maxWait) -
getMaxBackoff
public long getMaxBackoff() -
setMaxBackoff
public void setMaxBackoff(long maxBackoff) -
getBackoffDecreaseThreshold
public int getBackoffDecreaseThreshold() -
setBackoffDecreaseThreshold
public void setBackoffDecreaseThreshold(int backoffDecreaseThreshold) -
getName
-
getAcquireJobsCmd
-
getAcquireJobsCmdFactory
-
setAcquireJobsCmdFactory
-
isActive
public boolean isActive() -
getRejectedJobsHandler
-
setRejectedJobsHandler
-
startJobAcquisitionThread
protected void startJobAcquisitionThread() -
stopJobAcquisitionThread
protected void stopJobAcquisitionThread() -
getAcquireJobsRunnable
-
getExecuteJobsRunnable
-