v0.9.16 & 0.9.17 - ElasticSearch support

Redis and MongoDB improvements, ElasticSearch support and almost at 1.0

  • Ronald Dehuysser
  • September 3, 2020

v0.9.16 & 0.9.17 - ElasticSearch support

Some small and incremental releases which added the following new features:

  • InMemoryStorageProvider: a new InMemoryStorageProvider is available. When you choose this StorageProvider, do note that you cannot scale horizontally. If you however have some lightweight and instance-specific jobs where persistence is not important, you can use the InMemoryStorageProvider.
  • Redis: I received feedback of performance problems with Redis/Jedis. Release v0.9.15 tries to mitigate these.
    I also plan to migrate from Jedis to Lettuce.
  • JobRunrDashboardWebServer: a feature request was made to not start the dashboard server automatically and this is now consistent as how the BackgroundJobServer is started. The reason for this is that when you are using the Spring configuration style, you can now have one jar, which based on an environment variable starts the dashboard server or not. See also the breaking change below.
  • Streaming API: JobRunr now supports an easier streaming API using method references. This means you now have the following options available:
// lambda
BackgroundJob.<UserService, Long>enqueue(allAccounts.stream().map(UserAccount::getId), (service, id) -> service.printSingle(id));

// method reference
BackgroundJob.<UserService, Long>enqueue(allAccounts.stream().map(UserAccount::getId), UserService::printSingle);

Breaking change

This release contains a breaking change where the JobRunrDashboardWebServer does not start automatically if you are using the configuration using beans. The way to start it now is:

@Bean
public JobRunrDashboardWebServer dashboardWebServer(StorageProvider storageProvider, JsonMapper jsonMapper) {
    final JobRunrDashboardWebServer jobRunrDashboardWebServer = new JobRunrDashboardWebServer(storageProvider, jsonMapper);
    jobRunrDashboardWebServer.start();
    return jobRunrDashboardWebServer;
}

The JobRunr Blog

Everything you need to know about
background processing

Explore technical deep-dives, product updates, and real-world examples to help you build, scale, and monitor your Java background jobs.

blog image

March 30, 2023

Taming the Bursts: Efficient Cloud-Native Processing with JobRunr

Discover how JobRunr helps manage high-demand tasks like pay-check calculations, retail promotions, and email campaigns by distributing load across multiple servers in any environment.

Read More Details
blog image

August 17, 2020

JobRunr, Project Loom and Virtual Threads

After integrating the Virtual Threads of Project Loom, it’s time for a showdown between Java 11, Java 16 without Virtual Threads and Java 16 with Virtual Threads.

Read More Details
blog image

November 1, 2020

v1.2.0 - Amazon DocumentDB

Again support for a new datastore - this time for Amazon DocumentDB!

Read More Details
call to action

Ready to build reliable background jobs?

You focus on your business logic. We’ll take care of scheduling your background jobs reliably.

Get Started with JobRunr