notify
client_golang
notify | client_golang | |
---|---|---|
2 | 19 | |
2 | 5,139 | |
- | 1.1% | |
1.9 | 8.7 | |
12 months ago | 3 days ago | |
Go | Go | |
Apache License 2.0 | Apache License 2.0 |
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.
notify
-
Kafka as chat server?
Redis. The pub/sub is sufficient. Here's a notification service that plugs websockets in on one end: https://github.com/go-bridget/notify - I might add in server-side push support, or gobws to keep memory use down. A chat service can be implemented with a rpc API for write operations, and the notify websocket service to deliver events (new messages,...) and state (history, search,...).
-
Migrating from PHP to Go
I'm a big fan of [Twirp RPC](https://github.com/twitchtv/twirp), and [go-chi/chi](https://github.com/go-chi/chi) if I need to provide REST endpoints, authentication or other routing middleware. The "gorilla" set of packages are also useful, I always reach for gorilla/websocket if I need to do some websocket work. You can look at an example service in [go-bridget/notify](https://github.com/go-bridget/notify) - the main files to look at are under rpc/notify/notify.proto/.go, and the implementation which you write is under server/notify. If you'd create database drivers, I'd create a package under server/notify/mysql (for example), and then implement an interface for data retrieval/settings. It's on the todolist, if I'll ever need to implement anything other than JWT, or Redis. Comment if you have any questions or notes.
client_golang
-
5 Ways to Improve Your API Reliability
Prometheus, an open-source systems monitoring and alerting toolkit, has client libraries that allow you to instrument your services in a variety of languages. Here's an example of how you might use the Go client library to expose metrics on an HTTP endpoint. We will leverage the prometheus go client to expose metrics and create them.
-
a tool for quickly creating web and microservice code
Monitoring prometheus, grafana
- The most helpful Go Packages
- Observabilidade com Prometheus
-
How do you monitor your Go apps?
I'd recommend github.com/victoriametrics/metrics for exporting custom metrics in Prometheus format. It is easier to use than the github.com/prometheus/client_golang.
-
prometheus exporter using Go
Start at the official documentation and the Go client library .
-
Any recommendation on Go Metrics libraries to report metrics to DataDog.
DataDog can read Prometheus metrics. Note that this approach works for metrics but not for traces although you can configure DataDog to receive OpenTelemetry traces as well https://github.com/prometheus/client_golang
-
How to observe an http web application in real time with pprof?
For Go, the standard is to use Prometheus and the Prometheus Go client library.
- High performance / low overhead metrics/instrumentation library?
- Collecting Go Runtime Metrics With OpenCensus
What are some alternatives?
GORM - The fantastic ORM library for Golang, aims to be developer friendly
twirp - A simple RPC framework with protobuf service definitions
go-formatter - A curated list of awesome Go frameworks, libraries and software
opa-scorecard
goqu - SQL builder and query library for golang
helm-charts - Prometheus community Helm charts
mux - A powerful HTTP router and URL matcher for building Go web servers with 🦍
Gin - Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
microservice1
chi - lightweight, idiomatic and composable router for building Go HTTP services
jaeger-client-go - 🛑 This library is DEPRECATED!
prometheus - The Prometheus monitoring system and time series database.