Skip to content

Latest commit

 

History

History
86 lines (59 loc) · 1.67 KB

File metadata and controls

86 lines (59 loc) · 1.67 KB

Resilience4j Example

Introduction

This example shows how to use Camel with Resilience4j EIP as circuit breaker in Camel routes

The example includes four sub maven modules that implement

  • client (spring boot)

  • client2 (camel main)

  • service1

  • service2

Where client → service1 client → service2 (fallback)

Configuration

Service1 is configured in the src/main/java/sample/camel/Service1Application.java source code. Service2 is configured in the src/main/resources/application.properties properties file.

Build

You will need to compile this example first:

$ mvn compile

Run the example

Then using three different shells and run service1 and service2 before the client.

$ cd service1
$ mvn compile spring-boot:run

When service1 is ready then start service2

$ cd service2
$ mvn compile camel:run

And then start the client that calls service1 every second.

We have provided two clients, one is using Spring Boot, the other Camel Main. You can run either one of them.

To use Spring Boot

$ cd client
$ mvn compile spring-boot:run

Or to use Camel Main

$ cd client2
$ mvn compile camel:run

You can then stop service1 and see that the client should fallback to call service2 in the Resilience EIP circuit breaker. And then start service 1 again and see the Resilience EIP go back to normal.

Help and contributions

If you hit any problem using Camel or have some feedback, then please let us know.

We also love contributors, so get involved :-)

The Camel riders!