go-grpc-middleware
protolint
go-grpc-middleware | protolint | |
---|---|---|
7 | 3 | |
6,058 | 513 | |
1.0% | - | |
7.2 | 7.8 | |
4 days ago | about 11 hours ago | |
Go | Go | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-grpc-middleware
-
Seeking advice on implementing a tinyurl-like service using Go and gRPC.
Hello, Those interviews are even crazy for internship. Anyway 1. Try to find a simple CRUD example online. You can check [this](https://tutorialedge.net/golang/go-grpc-beginners-tutorial/) 2. For logging you can check [go-grpc-middleware](https://github.com/grpc-ecosystem/go-grpc-middleware) 3. You can grpc-gateway in case they want some REST endpoints too 4. Use base62 to encode your url. So at least 2 columns in your table **shortenedUrl** and **url** 5. For such a project no need to use an ORM ( it's not advised anyway ). Implement 2 functions, one to insert into the db and the other one to read from the db. Remember to use transaction though 5. For unit tests go with the standard library and mock the 2 functions ( erroneous and valid cases )
-
Understanding gRPC Concepts, Use Cases & Best Practices
Supported middlewares by gRPC framework.
-
[Question] Suggested way to update a database row using gRPC/PostgreSQL (pgx) ?
I do some basic validation at the server layer using a GRPC interceptor.
-
gRPC best practices
Example auth middleware: https://github.com/grpc-ecosystem/go-grpc-middleware/blob/master/auth/examples_test.go
-
Go, RabbitMQ and gRPC Clean Architecture microservice 💫👋
And initialize our gRPC service, here i used gRPC Middleware repository for unary interceptors:
-
Go gRPC Clean architecture microservice with Prometheus, Grafana monitoring and Jaeger opentracing ⚡️
I found this is very good gRPC Middleware repository, but we easy can create our own, for example logger interceptor:
protolint
-
Understanding gRPC Concepts, Use Cases & Best Practices
protolint - a plugin to add lint rules to proto files.
-
gRPC proto files Best Practices
We use protolint to lint the proto files. Please download and install protolint from https://github.com/yoheimuta/protolint/releases.
- Pluggable linting utility for Protocol Buffer files
What are some alternatives?
zap - Blazing fast, structured, leveled logging in Go.
go-exhaustruct - golang analyzer that finds structures with uninitialized fields
pgx - PostgreSQL driver and toolkit for Go
protolock - Protocol Buffer companion tool. Track your .proto files and prevent changes to messages and services which impact API compatibility.
Go-gRPC-RabbitMQ-microservice - Go gRPC RabbitMQ email microservice
goprotobuf - Go support for Google's protocol buffers
stdlog - Logging packages for Go
evans - Evans: more expressive universal gRPC client
pam - Go wrapper module for the Pluggable Authentication Modules (PAM) API
pre-commit - A framework for managing and maintaining multi-language pre-commit hooks.
flipt - Enterprise-ready, GitOps enabled, CloudNative feature management solution
go-proto-validators - Generate message validators from .proto annotations.