The release of JobRunr 8.0 introduces Carbon Aware Job Processing, a new feature that provides an optimized carbon footprint for developers when scheduling jobs. Other new features include support for Kotlin serialization; a new dashboard notification center; and a new @AsyncJob
annotation that reduces routine job creation boilerplate.
ENTSO-E, an energy provider for the European Union, provides the data used for carbon-aware scheduling. As shown in the image below, carbon emissions are displayed in a color-coded, hourly timeline in the JobRunr dashboard. Developers can use information to schedule their jobs during times when the lowest amount of CO2 is being generated. Details on how to use this new feature may be found in the user guide. Carbon-aware job processing is not yet available in the United States.
Developers who prefer to build applications with Kotlin 2.1+ may now use KotlinxSerializationJsonMapper
, a new class that implements the serialization-specific JsonMapper
interface. An instance of the KotlinxSerializationJsonMapper
class may be programmatically configured by using the JobRunr Fluent API or by replacing the default JsonMapper
bean provided by the JobRunr’s autoconfiguration utility.
The new dashboard notification center conveniently provides all notifications in one location. Users can simply click on the new bell icon located on the menu bar to maximize and minimize the notifications. This eliminates the dashboard clutter that existed in previous versions. More details of severe notifications may be opened in a separate window.
The new @AsyncJob
annotation reduces the routine boilerplate when enqueuing a job. Simply use @AsyncJob
on a class that contains a method annotated with the @Job
annotation. JobRunr will then intercept this method, create the job, and save it for future execution.
Breaking changes in this release include:
- Removal of the Redis and Elasticsearch storage providers, namely:
LettuceStorageProvider
,JedisStorageProvider
orElasticSearchStorageProvider
, as they were deprecated in version 7.0; - A change in the multiple constructor signatures defined in the
RecurringJob
class. Developers are encouraged to use theRecurringJobBuilder
class to build a recurring job. - The
setLabels()
method, defined in theAbstractJob
class, and the overloadedwithLabels()
method, defined in theJobBuilder
andRecurringJobBuilder
classes, now expect aList
instead of aSet
as an argument.
Introduced in April 2020, carbon-aware job processing complements an existing list of significant new features delivered by JobRunr since the beginning. These include: integration with Spring Starter, Quarkus and Micronaut; Spring Native (now part of Spring Boot 3.0+); and support for virtual threads.
Ronald Dehuysser, creator of JobRunr, spoke to InfoQ about this latest release.
InfoQ: What has your journey with JobRunr meant to you since launching it in April 2020?
Dehuysser: I originally started JobRunr more as a hobby project, after noticing that Java lacked a simple, modern background job processing library that could scale without the baggage of traditional message queues. What began as an experiment of a couple of months gained more traction than I could ever imagine – first with developers who appreciated its simplicity and then with companies looking for reliable background processing in production.
Since launching in April 2020, JobRunr has grown from a passion project into a commercial product used by companies across the globe. Personally, it’s been incredibly rewarding to see it solve real business problems, from scheduling jobs to scaling workloads, and to receive feedback from developers who say it’s made their lives easier.
I am especially proud of our latest addition – the carbon-aware job scheduling. It reflects how we’re not just improving software infrastructure, but also helping companies become more sustainable without too much impact – something I believe will only become more important in the years ahead.
InfoQ: What’s on the horizon for JobRunr?
Dehuysser: Our next big goal is bringing carbon-aware job scheduling to the United States. Right now, it’s only available in the EU, but we believe developers everywhere should have the tools to schedule jobs when the grid is cleanest – especially as sustainability becomes a growing priority. We believe in building smarter, greener tech.
Aside from that, we’ll continue doing what we’ve always done: listening to our users. Their input and feature requests are what shape JobRunr’s future. Whether it’s new capabilities, performance optimizations, or integrations, we’ll keep evolving to meet real-world needs.
The JobRunr platform offers both community and professional editions. More details on this latest release may be found in the release notes, the migration guide and launch webinar.
Editor’s Notes
The carbon-aware diagram is courtesy of Ronald Dehuysser and the JobRunr team.