Quarkus

HTTP-based Communication you own this product

This project is part of the liveProject series An Enterprise Microservice with Quarkus and Kubernetes
prerequisites
basic knowledge of HTTP resiliency strategy (retries, circuit breaker) • basic knowledge of HTTP protocol
skills learned
define a REST client using Quarkus • implement the common resiliency techniques (timeout, retries,fallback and circuit breaker) with Quarkus • mock a REST client to implement unit tests • simulate an HTTP service using WireMock to implement integration tests
Daniel Petisme
1 week · 6-8 hours per week · INTERMEDIATE
filed under

placing your order...

Don't refresh or navigate away from the page.
liveProject This project is part of the liveProject series An Enterprise Microservice with Quarkus and Kubernetes liveProjects give you the opportunity to learn new skills by completing real-world challenges in your local development environment. Solve practical problems, write working code, and analyze real data—with liveProject, you learn by doing. These self-paced projects also come with full liveBook access to select books for 90 days plus permanent access to other select Manning products. $19.99 $29.99 you save $10 (33%)
HTTP-based Communication (liveProject) added to cart
continue shopping
adding to cart

Look inside

The success of Chill+ is soaring, but so are its infrastructure costs. As a software engineer for this nextgen video streaming platform, it’s up to you to devise a cost-mitigating plan. Your solution is to reduce resource consumption by implementing crucial interservice communication and fault tolerance. You’ll use a REST client to integrate with another HTTP service, mock external calls with Mockito, and run tests against a mock HTTP server using a fixture. You’ll use the Quarkus Fault Tolerance extension to incorporate resiliency patterns, and you’ll implement error handling by adding retries, timeouts, circuit breakers, and fallbacks to the Catalog API. When you’re done, Chill+’s catalog service will return more accurate results to its customers with fewer requests, and have increased—and less costly—fault resilience.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Daniel Petisme

Daniel Petisme has an engineering degree in IT, and he’s been mixing technical expertise and innovation at Michelin for the past ten years. He joined Confluent in March 2021 as a customer success architect providing support and guidance about Kafka-related technologies. He’s a strong believer in open source, and he channels his passion for learning and sharing knowledge by teaching several software-related courses to IT engineers, and co-organizing local technical events. He’s a part of the JHipster and Vert.x core team and actively contributes to Kafka and Quarkus.

prerequisites

This liveProject is for software engineers with basic experience with cloud-native patterns and building Java applications. To begin these liveProjects you’ll need to be familiar with the following:

TOOLS
  • Basic understanding of using Maven to build a Java-based application
  • Basic understanding of HTTP protocol
  • Develop Java tests using frameworks like JUnit, Mockito, and test containers
TECHNIQUES
  • Develop small API-oriented applications using Java frameworks (Spring, Micronaut, Jakarta EE, Vert.x)
  • Develop Java tests using frameworks like JUnit, Mockito, and test containers
  • Implement cloud-native patterns (timeouts, retries, fallbacks, and circuit breakers)

you will learn

In this liveProject, you’ll learn how to integrate with a third-party HTTP service and implement fault tolerance strategies.

  • Install Quarkus REST and Fault Tolerant extensions
  • Implement HTTP-based communication
  • Mock the HTTP client to implement unit tests
  • Use WireMock to implement integration testing
  • Implement timeouts and retries to absorb transient errors
  • Implement a circuit breaker pattern with fallback to fail quickly

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.
RECENTLY VIEWED