Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
opentracing-go
Discontinued OpenTracing API for Go. 🛑 This library is DEPRECATED! https://github.com/opentracing/specification/issues/163
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Grafana
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
Source code you can find in the GitHub repository. For this project let's implement Spring microservice using gRPC and Postgresql. Previously have the same one using Kotlin, this on ll very close but using 17 Java and Spring WebFlux. gRPC is very good for low latency and high throughput communication, so it's great for microservices where efficiency is critical. Messages are encoded with Protobuf by default. While Protobuf is efficient to send and receive, its binary format. Spring doesn't provide us gRPC starter out of the box, and we have to use community one, the most popular is yidongnan and LogNet, both are good and ready to use, for this project selected the first one. For reactive gRPC available Salesforce reactive-grpc. In the first step, we have to add gRPC Java Codegen Plugin for Protobuf Compiler.
GitHub repository
LogNet
Spring web framework Spring WebFlux Reactive REST Services gRPC Java gRPC gRPC-Spring-Boot-Starter gRPC Spring Boot Starter Salesforce Reactive gRPC Salesforce Reactive gRPC Spring Data R2DBC a specification to integrate SQL databases using reactive drivers Zipkin open source, end-to-end distributed tracing Spring Cloud Sleuth autoconfiguration for distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus Kubernetes automating deployment, scaling, and management of containerized applications Docker and docker-compose Helm The package manager for Kubernetes Flywaydb for migrations
Spring web framework Spring WebFlux Reactive REST Services gRPC Java gRPC gRPC-Spring-Boot-Starter gRPC Spring Boot Starter Salesforce Reactive gRPC Salesforce Reactive gRPC Spring Data R2DBC a specification to integrate SQL databases using reactive drivers Zipkin open source, end-to-end distributed tracing Spring Cloud Sleuth autoconfiguration for distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus Kubernetes automating deployment, scaling, and management of containerized applications Docker and docker-compose Helm The package manager for Kubernetes Flywaydb for migrations
Spring web framework Spring WebFlux Reactive REST Services gRPC Java gRPC gRPC-Spring-Boot-Starter gRPC Spring Boot Starter Salesforce Reactive gRPC Salesforce Reactive gRPC Spring Data R2DBC a specification to integrate SQL databases using reactive drivers Zipkin open source, end-to-end distributed tracing Spring Cloud Sleuth autoconfiguration for distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus Kubernetes automating deployment, scaling, and management of containerized applications Docker and docker-compose Helm The package manager for Kubernetes Flywaydb for migrations
Spring web framework Spring WebFlux Reactive REST Services gRPC Java gRPC gRPC-Spring-Boot-Starter gRPC Spring Boot Starter Salesforce Reactive gRPC Salesforce Reactive gRPC Spring Data R2DBC a specification to integrate SQL databases using reactive drivers Zipkin open source, end-to-end distributed tracing Spring Cloud Sleuth autoconfiguration for distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus Kubernetes automating deployment, scaling, and management of containerized applications Docker and docker-compose Helm The package manager for Kubernetes Flywaydb for migrations
Spring web framework Spring WebFlux Reactive REST Services gRPC Java gRPC gRPC-Spring-Boot-Starter gRPC Spring Boot Starter Salesforce Reactive gRPC Salesforce Reactive gRPC Spring Data R2DBC a specification to integrate SQL databases using reactive drivers Zipkin open source, end-to-end distributed tracing Spring Cloud Sleuth autoconfiguration for distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus Kubernetes automating deployment, scaling, and management of containerized applications Docker and docker-compose Helm The package manager for Kubernetes Flywaydb for migrations
Spring web framework Spring WebFlux Reactive REST Services gRPC Java gRPC gRPC-Spring-Boot-Starter gRPC Spring Boot Starter Salesforce Reactive gRPC Salesforce Reactive gRPC Spring Data R2DBC a specification to integrate SQL databases using reactive drivers Zipkin open source, end-to-end distributed tracing Spring Cloud Sleuth autoconfiguration for distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus Kubernetes automating deployment, scaling, and management of containerized applications Docker and docker-compose Helm The package manager for Kubernetes Flywaydb for migrations
Spring web framework Spring WebFlux Reactive REST Services gRPC Java gRPC gRPC-Spring-Boot-Starter gRPC Spring Boot Starter Salesforce Reactive gRPC Salesforce Reactive gRPC Spring Data R2DBC a specification to integrate SQL databases using reactive drivers Zipkin open source, end-to-end distributed tracing Spring Cloud Sleuth autoconfiguration for distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus Kubernetes automating deployment, scaling, and management of containerized applications Docker and docker-compose Helm The package manager for Kubernetes Flywaydb for migrations