InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises. Learn more →
Grpc-go Alternatives
Similar projects and alternatives to grpc-go
-
validator
:100:Go Struct and Field validation, including Cross Field, Cross Struct, Map, Slice and Array diving
-
rpcx
Best microservices framework in Go, like alibaba Dubbo, but with more features, Scale easily. Try it. Test it. If you feel it's better, use it! 𝐉𝐚𝐯𝐚有𝐝𝐮𝐛𝐛𝐨, 𝐆𝐨𝐥𝐚𝐧𝐠有𝐫𝐩𝐜𝐱! build for cloud!
-
InfluxDB
Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.
-
-
-
-
go-zero
A cloud-native Go microservices framework with cli tool for productivity.
-
-
SonarQube
Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.
-
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.
-
KrakenD
Ultra performant API Gateway with middlewares. A project hosted at The Linux Foundation
-
-
-
-
-
opentracing-javascript
OpenTracing API for Javascript (both Node and browser). 🛑 This library is DEPRECATED! https://github.com/opentracing/specification/issues/163
-
-
-
Caddy
Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
grpc-go reviews and mentions
-
Golang is evil on shitty networks
Found the root cause from https://github.com/grpc/grpc-go/commit/383b1143 (original issue: https://github.com/grpc/grpc-go/issues/75):
// Note that ServeHTTP uses Go's HTTP/2 server implementation which is
-
a tool for quickly creating web and microservice code
RPC framework grpc
-
gRPC behind a firewall - no public ip
- https://github.com/grpc/grpc-go/issues/484
-
Go EventSourcing and CQRS with PostgreSQL, Kafka, MongoDB and ElasticSearch 👋✨💫
PostgeSQL as event store database Kafka as messages broker gRPC Go implementation of gRPC Jaeger open source, end-to-end distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus MongoDB MongoDB database Elasticsearch Elasticsearch client for Go. Echo web framework Kibana Kibana is data visualization dashboard software for Elasticsearch Migrate for migrations
-
How “let it fail” leads to simpler code
....
And RpcException will only be raised beyond this if the backend is unreachable for ~30 seconds.
Similarly, rpc services can abstract over this entirely, grpc (and presumably others) allow you to configure the retry policy per rpc service or method, and have it reflected everywhere that is used, without writing wrappers[0].
Which really all is to say, once you have solid libraries that handle retries of operations that are known to be error prone (file IO, network IO, things that could lock/block, etc.) you pretty quickly get into "any error implies we're totally boned".
[0]: https://github.com/grpc/grpc-go/blob/f601dfac73c9/examples/f...
-
Experience report: Converting from Google gRPC to Buf's Connect RPC (with gRPC compatibility)
To get a sense of how convoluted it is to read and write headers and trailers without generics, check out grpc-go’s documentation: https://github.com/grpc/grpc-go/blob/master/Documentation/grpc-metadata.md
-
Connect, a better gRPC
To appreciate just how complicated putting headers on the context is, check out grpc-go's documentation on metadata, and note how particular you need to be about inbound vs outbound metadata. They've really thought this through, and I don't see a substantially better way to design a context-based system.
-
Nginx Modern Reference Architectures
Caddy is capable of handling bidirectional gRPC streams! I have just tested it, and it works just fine. The caveat is having to use `flush_interval -1` to immediately flush writes instead of having to wait until reading from socket is complete.
I used this Caddyfile to proxy to the route_guide example (https://github.com/grpc/grpc-go/tree/master/examples/route_g...):
```
- We reduced 502 errors by caring about PID 1 in Kubernetes
-
Go EventSourcing and CQRS microservice using EventStoreDB 👋⚡️💫
In this article let's try to create closer to real world Event Sourcing CQRS microservice using: 🚀👨💻🙌 EventStoreDB The database built for Event Sourcing gRPC Go implementation of gRPC MongoDB Web and API based SMTP testing Elasticsearch Elasticsearch client for Go. Jaeger open source, end-to-end distributed tracing Prometheus monitoring and alerting Grafana for to compose observability dashboards with everything from Prometheus swag Swagger for Go Echo web framework Kibana Kibana is user interface that lets you visualize your Elasticsearch
-
A note from our sponsor - InfluxDB
www.influxdata.com | 8 Feb 2023
Stats
grpc/grpc-go is an open source project licensed under Apache License 2.0 which is an OSI approved license.