Flag job

Report

Task scheduler in Java: background job processing with JobRunr

Min Experience

0 years

Location

remote

About the job

Info This job is sourced from a job board

About the role

JobRunr is an open-source Java library for task scheduling and distributed background job processing. It offers an effortless way to perform background tasks using only Java 8 lambdas. Whether it is a fire-and-forget, scheduled or recurring job, JobRunr analyzes the lambda and stores the metadata needed to process the job in a database. This simple architecture, with a few other mechanisms, allows a job to be executed on any available server running your application (👋 k8s). In the event of a failure, JobRunr automatically retries the job. Thanks to the built-in dashboard, it's easy to monitor the system to see why a job failed or to perform actions such as requeuing or deleting a job. The software integrates easily into any Java application by adding JobRunr as a dependency. It also works seamlessly with frameworks like Spring Boot, Quarkus, and Micronaut. JobRunr use cases in Java The applications of JobRunr are almost limitless: anything that can be done in Java can be automated and scheduled with JobRunr. Would you like to send mass notifications, fire webhooks, process images, or videos? JobRunr can do it all for you, so you can focus on solving the business problems at hand. JobRunr is used in various industries from retail to healthcare to marketing, no matter the size of your company. We have written a few articles about how JobRunr Pro is used in those industries: visit to learn more. Core task scheduler features for Developers Developer friendly: the API of JobRunr is simple, flexible and straightforward - with a simple, yet extensive set up. Simple adoption: JobRunr fits into any software architecture and requires little changes to your codebase while requiring a low amount of dependencies. Framework integration: JobRunr supports the most popular Java frameworks: Spring, Quarkus and Micronaut. Various storage options: persistent storage is done via either RDBMS (e.g. Postgres, MariaDB/MySQL, Oracle, SQL Server, DB2 and SQLite) or NoSQL (ElasticSearch, MongoDB and Redis) Cloud native and cloud agnostic: deployable anywhere, either on your preferred cloud provider or on-premise Distributed processing: scale is not an issue - JobRunr supports job distribution across a cluster. Fault tolerance: JobRunr is also fault-tolerant - is an external web service down? No worries, the job is automatically retried 10-times with a smart back-off policy. The retry policy is of course configurable! Real-time monitoring: JobRunr provides a dashboard that allows users to monitor jobs, trigger or delete recurring jobs and requeue or delete jobs. Virtual threads: JobRunr supports virtual threads to allow for an increased throughput of I/O jobs. Comprehensive documentation: the documentation covers everything from setup to advanced features, easing the learning curve. What's next: Carbon-aware jobs JobRunr is now in collaboration with MindWave to add carbon-aware task scheduler in Java. The carbon-aware job feature aims to optimize job execution by selecting periods with the highest availability of renewable energy. The goal is to work towards achieving one of the SDGs' objectives.

Skills

java
spring
quarkus
micronaut