https://github.com/lreimer/from-rest-to-grpc
REST in Peace. Long live gRCP. Demo repository.
https://github.com/lreimer/from-rest-to-grpc
grpc grpc-go grpc-java grpc-web grpc-web-proxy hacktoberfest protobuf
Last synced: 12 months ago
JSON representation
REST in Peace. Long live gRCP. Demo repository.
- Host: GitHub
- URL: https://github.com/lreimer/from-rest-to-grpc
- Owner: lreimer
- License: mit
- Created: 2021-11-09T09:01:06.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-10-29T06:09:14.000Z (over 1 year ago)
- Last Synced: 2025-04-04T13:04:20.426Z (about 1 year ago)
- Topics: grpc, grpc-go, grpc-java, grpc-web, grpc-web-proxy, hacktoberfest, protobuf
- Language: HTML
- Homepage:
- Size: 5.85 MB
- Stars: 29
- Watchers: 6
- Forks: 5
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# REST in Peace. Long live gRCP!
Demo repository for different REST to gRPC showcases. It contains several different service implementations as well as matching clients.
## Running
```shell
# this repo contains several different implementations, choose one
# use Skaffold to spin up the services
skaffold dev --no-prune=false --cache-artifacts=false -f skaffold_quarkus
skaffold dev --no-prune=false --cache-artifacts=false -f skaffold_micronaut
skaffold dev --no-prune=false --cache-artifacts=false -f skaffold_golang
# use Tilt to spin up the services
tilt up -f Tiltfile_quarkus
tilt up -f Tiltfile_micronaut
tilt up -f Tiltfile_golang
```
## Usage
```shell
# call the plain REST service endpoint
http get localhost:18080/api/beers
# call the gRPC service endpoint
grpcurl -plaintext -proto micronaut-beer-grpc/src/main/proto/beer.proto localhost:19090 beer.BeerService/AllBeers
# call the NGINX proxy for the gRPC endpoint
grpcurl -plaintext -proto micronaut-beer-grpc/src/main/proto/beer.proto localhost:18888 beer.BeerService/AllBeers
# call the gRPC gateway service endpoint
http get localhost:18090/api/beers
```
## Maintainer
M.-Leander Reimer (@lreimer),
## License
This software is provided under the MIT open source license, read the `LICENSE`
file for details.