Spring Cloud

One way to ensure that an HTTP request to a web service endpoint contains an Authorization JWT token is to configure a gateway route to require an Authorization header.  If the HTTP request does not contain an Authorization header, Spring Cloud API Gateway will not even route this request to a destination microservice. We can…

Read More The Header Predicate in Spring Cloud API Gateway

This tutorial will teach you how to configure your Spring Cloud API Gateway to automatically create routes based on services registered with discovery clients like Eureka, Consul, or Zookeeper. For a step-by-step series of video lessons, please check this page: Spring Boot Microservices and Spring Cloud. Enable Discovery Locator A quick way to enable Spring Cloud…

Read More Spring Cloud API Gateway Automatic Mapping of Routes

In this tutorial, you will learn how to create an instance of @LoadBalanced RestTemplate and make it communicate with an internal microservice. For a step-by-step series of video lessons, please check this page: Spring Boot Microservices and Spring Cloud. Create RestTemplate Bean To create an instance of RestTemplate, you will need to first make sure…

Read More @LoadBalanced RestTemplate Call Internal Microservice

In this tutorial, you will learn how to make Zuul API Gateway pass an Authorization header to a downstream Microservice. To learn how to make Spring Boot Microservice read HTTP Request headers, please read this tutorial: Read HTTP Request Header in Spring MVC. Configure Zuul API Gateway to Forward an Authorization Header By default, Zuul…

Read More Pass Authorization Header to Downstream Microservice

In this tutorial, you will learn to create a Docker image for your Spring Cloud Config Server, which uses Symmetric or Asymmetric encryption to protect sensitive information. To learn how to create Spring Cloud Config that uses Symmetric encryption, read Spring Cloud Config – Symmetric Encryption and Decryption(Includes Video tutorial). And to learn how to create Spring…

Read More Docker Image for Spring Cloud Config Server

In this tutorial, I will share with you how to secure Spring Cloud Eureka dashboard with Spring Security. To learn how to build RESTful Microservices with Spring Cloud by watching step-by-step video lessons, please check this page: Spring Boot Microservices and Spring Cloud. Add Spring Security to Eureka To secure Eureka with Spring Security, we will…

Read More Secure Eureka Dashboard with Spring Security

If a requested Microservice takes long time to respond, Zuul Api Gateway might timeout and a Gateway timeout error will take place. { “timestamp”: “2019-05-24T00:53:22.152+0000”, “status”: 504, “error”: “Gateway Timeout”, “message”: “com.netflix.zuul.exception.ZuulException: Hystrix Readed time out” } In this short blog post I am going to share with you how to make your Zuul Api…

Read More Zuul API Gateway Timeout Error

In this tutorial, you will learn how to handle errors when you use the Hystrix Circuit breaker with Feign client. To handle errors, we will use Feign Hystrix FallbackFactory. Another way to handle errors is to use ErrorDecoder. For step-by-step video beginner lessons demonstrating how to do Feign error handling and how to build Microservices…

Read More Hystrix Circuit Breaker and Feign Error Handling

In this tutorial, I will share with you how you can use Feign ErrorDecoder to handle errors that occur when using Feign client in Microservices communication. For step-by-step video beginner lessons demonstrating how to do Feign error handling and how to build Microservices with Spring Boot and Spring Cloud, have a look at this page: Spring…

Read More Feign Error Handling with ErrorDecoder

In this tutorial, you will learn how to use Netflix Hystrix circuit breakers to enable your Microservices to gracefully handle situations when one of the Microservices becomes unavailable to handle a request during inter-service communication. For step-by-step beginner video lessons demonstrating how to use Hystrix Circuit Breaker and how to build Microservices in Spring Cloud,…

Read More Hystrix CircuitBreaker and Feign

In this tutorial, I will share how to use Feign Client to send HTTP Requests to another Microservice. For a step-by-step series of video lessons, please check this page: Spring Boot Microservices and Spring Cloud. Adding Feign to Your Project To use Feign Client in your Spring Boot application, add the following dependency to a…

Read More Feign Client to Call Another Microservice

In this tutorial, you will learn how to use Asymmetric Encryption(RSA key pair) to encrypt sensitive information in configuration properties served by Spring Cloud Config Server.  Asymmetric Encryption is a stronger encryption type than symmetric encryption(shared key), but it requires a little bit more effort to set up because we need to generate an encryption key. We…

Read More Spring Cloud Config – Asymmetric Encryption and Decryption

In this tutorial, you will learn how to encrypt and decrypt a property value that is being served by Spring Cloud Config Server. The Config Server can use a symmetric (shared) key or an asymmetric one (RSA key pair). In this tutorial, we will use the symmetric key. For Asymmetric Encryption, read this tutorial: Spring Cloud…

Read More Spring Cloud Config – Symmetric Encryption and Decryption