Files
spring-cloud-task/spring-cloud-task-samples/partitioned-batch-job/README.adoc
Glenn Renfro b7b7de5337 Updated readmes to improve copy pastability
Also added instructions for native compilation for those apps that it is useful

Added documentation for native compilation when using Single Step Batch Processing

Updated documentaiton for native compilation for single app processing
2022-10-07 14:29:05 -04:00

43 lines
1.6 KiB
Plaintext

= Partitioned Job
An example of the usage of the `DeployerPartitionHandler` and
`DeployerStepExecutionHandler` to partition a Spring Batch job.
== Requirements:
* Java 17 or Above
== Build:
[source,shell]
----
./mvnw clean install
----
== Execute:
[source,shell]
----
export SPRING_APPLICATION_JSON='{"spring.datasource.url":"jdbc:mariadb://localhost:3306/<your database>","spring.datasource.password":"<your password>","spring.datasource.username":"<your username>","spring.datasource.driverClassName":"org.mariadb.jdbc.Driver"}'
java -jar target/partitioned-batch-job-3.0.0.jar
----
NOTE: This example will use require a MySql RDBMS repository and currently uses the mariadb jdbc driver to connect.
You can changes this another driver based on your needs.
NOTE: Since this example uses the Spring Cloud Deployer Local to launch the partitions, you will need to establish the datasource settings using the SPRING_APPLICATION_JSON environment property as shown above.
== Dependencies:
A datasource (not in memory) must be configured based on normal Spring Boot conventions
(application.properties, application.yml, environment variables).
== Asynchronous remote partition task launch
Currently partitions are launched sequentially. To launch them asynchronously set the following environment variables:
* `spring.cloud.task.closecontextEnabled=true`
* `io.spring.asynchronous=true`
NOTE: We need to close the context since the use of ThreadPoolTaskExecutor leaves a thread active thus the app will not terminate.
To close the application appropriately, we will need to set `spring.cloud.task.closecontextEnabled`` to true.