Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/aleksk1ng/spring-grpc-postgres

Spring WebFlux gRPC and R2DBC Microservice
https://github.com/aleksk1ng/spring-grpc-postgres

clean-architecture ddd docker flyway grafana grpc grpc-java kubernetes microservices postgresql prometheus r2dbc spring spring-boot spring-webflux zipkin

Last synced: 26 days ago
JSON representation

Spring WebFlux gRPC and R2DBC Microservice

Awesome Lists containing this project

README

        

### Spring WebFlux gRPC microservice 👋✨💫

#### 👨‍💻 Full list what has been used:
[Spring](https://spring.io/) web framework

[Spring WebFlux](https://docs.spring.io/spring-framework/docs/current/reference/html/web-reactive.html) Reactive REST Services

[gRPC](https://grpc.io/docs/languages/java/quickstart/) Kotlin gRPC

[gRPC-Spring-Boot-Starter](https://yidongnan.github.io/grpc-spring-boot-starter/en/) gRPC Spring Boot Starter

[Reactive gRPC](https://github.com/salesforce/reactive-grpc) Reactive gRPC

[Spring Data R2DBC](https://spring.io/projects/spring-data-r2dbc) a specification to integrate SQL databases using reactive drivers

[Zipkin](https://zipkin.io/) open source, end-to-end distributed [tracing](https://opentracing.io/)

[Spring Cloud Sleuth](https://docs.spring.io/spring-cloud-sleuth/docs/current-SNAPSHOT/reference/html/index.html) autoconfiguration for distributed tracing

[Prometheus](https://prometheus.io/) monitoring and alerting

[Grafana](https://grafana.com/) for to compose observability dashboards with everything from Prometheus

[Kubernetes](https://kubernetes.io/) automating deployment, scaling, and management of containerized applications

[Docker](https://www.docker.com/) and docker-compose

[Helm](https://helm.sh/) The package manager for Kubernetes

[Flywaydb](https://flywaydb.org/) for migrations

All UI interfaces will be available on ports:

#### Swagger UI: http://localhost:8000/webjars/swagger-ui/index.html
Swagger

#### Grafana UI: http://localhost:3000
Grafana

#### Zipkin UI: http://localhost:9411
Zipkin

#### Prometheus UI: http://localhost:9090
Prometheus

For local development 🙌👨‍💻🚀:

```
make local // for run docker compose
```
or
```
make develop // run all in docker compose
```