Microservices with Spring Boot 3 and Spring Cloud
Piotr's TechBlog » Spring boot
by piotr.minkowski
1w ago
This article will teach you how to build microservices with Spring Boot 3 and the Spring Cloud components. It’s a tradition that I describe this topic once a new major version of Spring Boot is released. As you probably know, Spring Boot 3.0 is generally available since the end of November 2022. In order to compare changes, you can read my article about microservices with Spring 2 written almost five years ago. In general, we will cover the following topics in this article: Using Spring Boot 3 in cloud-native development Provide service discovery for all microservices with Spring Cl ..read more
Visit website
An Advanced GraphQL with Spring Boot
Piotr's TechBlog » Spring boot
by piotr.minkowski
2M ago
In this article, you will learn how to use Spring for GraphQL in your Spring Boot app. Spring for GraphQL is a relatively new project. The 1.0 version was released a few months ago. Before that release, we had to include third-party libraries to simplify GraphQL implementation in the Spring Boot app. I have already described two alternative solutions in my previous articles. In the following article, you will learn about the GraphQL Java Kickstart project. In the other article, you can see how to create some more advanced GraphQL queries with the Netflix DGS library. We will use a very similar ..read more
Visit website
Renew Certificates on Kubernetes with Cert Manager and Reloader
Piotr's TechBlog » Spring boot
by piotr.minkowski
3M ago
In this article, you will learn how to renew certificates in your Spring Boot apps on Kubernetes with cert-manager and Stakater Reloader. We are going to run two simple Spring Boot apps that communicate with each other over SSL. The TLS cert used in that communication will be automatically generated by Cert Manager. With Cert Manager we can easily rotate certs after a certain time. In order to automatically use the latest TLS certs we need to restart our apps. We can achieve it with Stakater Reloader. Before we start, it is worth reading the following article. It shows how to use cert-manager ..read more
Visit website
Spring Boot 3 Observability with Grafana
Piotr's TechBlog » Spring boot
by piotr.minkowski
5M ago
This article will teach you how to configure observability for your Spring Boot applications. We assume that observability is understood as the interconnection between metrics, logging, and distributed tracing. In the end, it should allow you to monitor the state of your system to detect errors and latency. There are some significant changes in the approach to observability between Spring Boot 2 and 3. Tracing will no longer be part of Spring Cloud through the Spring Cloud Sleuth project. The core of that project has been moved to Micrometer Tracing. You can read more about the reasons and fut ..read more
Visit website
A Deep Dive Into Spring Boot Configuration
Piotr's TechBlog » Spring boot
by piotr.minkowski
8M ago
In this article, you will learn more about Spring Boot configuration. I’ll show you how to use it effectively in different environments. Especially, we talk a little bit more about configuration for Kubernetes. There are a lot of available options including properties, YAML files, environment variables, and command-line arguments. The thing we want to achieve is a strict separation of config from code for our app. We should comply with the third rule of the Twelve-Factor App. If you like topics related to the Spring Boot configuration you may be interested in two other articles on my blog. In ..read more
Visit website
ActiveMQ Artemis with Spring Boot on Kubernetes
Piotr's TechBlog » Spring boot
by piotr.minkowski
8M ago
This article will teach you how to run ActiveMQ on Kubernetes and integrate it with your app through Spring Boot. We will deploy a clustered ActiveMQ broker using a dedicated operator. Then we are going to build and run two Spring Boot apps. The first of them is running in multiple instances and receiving messages from the queue, while the second is sending messages to that queue. In order to test the ActiveMQ cluster, we will use Kind. The consumer app connects to the cluster using several different modes. We will discuss those modes in detail. You can find a lot of articles about other messa ..read more
Visit website
Introduction to ksqlDB on Kubernetes with Spring Boot
Piotr's TechBlog » Spring boot
by piotr.minkowski
9M ago
In this article, you will learn how to run ksqlDB on Kubernetes and use it with Spring Boot. You will also see how to run Kafka on Kubernetes based on the Strimzi operator. In order to integrate Spring Boot with the ksqlDB server, we are going to leverage a lightweight Java client provided by ksqlDB. This client supports pull and push queries. It also provides an API for inserting rows and creating tables or streams. You can read more about it in the ksqlDB documentation here. Our sample Spring Boot application is very simple. We will use Spring Cloud Stream Supplier bean for generating and se ..read more
Visit website
HTTPS on Kubernetes with Spring Boot, Istio and Cert Manager
Piotr's TechBlog » Spring boot
by piotr.minkowski
10M ago
In this article, you will learn how to create secure HTTPS gateways on Kubernetes. We will use Cert Manager to generate TLS/SSL certificates. With Istio we can create secure HTTPS gateways and expose them outside a Kubernetes cluster. Our test application is built on top of Spring Boot. We will consider two different ways of securing that app. In the first of them, we are going to set mutual TLS on the gateway and a plain port on the app side. Then, we run a scenario with a secure 2-way SSL configured on the Spring Boot app. Let’s see how it looks. There are several topics you should be famil ..read more
Visit website
Deep Dive into Saga Transactions with Kafka Streams and Spring Boot
Piotr's TechBlog » Spring boot
by piotr.minkowski
10M ago
In this article, you will learn how to use Kafka Streams and Spring Boot to perform transactions according to the Saga pattern. To be honest, I was quite surprised by a great deal of attention to my last article about Kafka. I got some questions about streams, transactions, and support for Kafka in Spring Boot. In this article, I’ll try to answer a few of them. I will also show how you can easily set up a cloud-managed Kafka on the Upstash. Introduction First of all, let’s recap the approach described in the previous article. We used Kafka Streams to process order transactions on the order-ser ..read more
Visit website
Canary Release on Kubernetes with Knative and Tekton
Piotr's TechBlog » Spring boot
by piotr.minkowski
10M ago
In this article, you will learn how to prepare a canary release in your CI/CD with Knative and Tekton. Since Knative supports many versions of the same service it seems to be the right tool to do canary releases. We will use its feature called gradual rollouts to shift the traffic to the latest version in progressive steps. As an exercise, we are going to compile natively (with GraalVM) and run a simple REST service built on top of Spring Boot. We will use Cloud Native Buildpacks as a build tool on Kubernetes. Let’s begin! If you are interested in more details about Spring Boot native compilat ..read more
Visit website

Follow Piotr's TechBlog » Spring boot on Feedspot

Continue with Google
Continue with Apple
OR