Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/daheige/gmicro
golang grpc micro framework.
https://github.com/daheige/gmicro
gmicro go grpc grpc-framework grpc-gateway grpc-tools micro microservice
Last synced: 3 months ago
JSON representation
golang grpc micro framework.
- Host: GitHub
- URL: https://github.com/daheige/gmicro
- Owner: daheige
- License: mit
- Created: 2020-06-26T09:02:28.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-06-11T01:40:41.000Z (7 months ago)
- Last Synced: 2024-09-30T16:21:49.095Z (3 months ago)
- Topics: gmicro, go, grpc, grpc-framework, grpc-gateway, grpc-tools, micro, microservice
- Language: Go
- Homepage: https://pkg.go.dev/github.com/daheige/gmicro/v2
- Size: 539 KB
- Stars: 10
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# gmicro
Golang grpc micro library.
Microservice prototype with gRPC + http +h2c+ gRPC gateway + logger + prometheus.
Require Go version >= v1.13.
Reference project:https://github.com/dakalab/micro# supported features
Golang grpc microservice scaffolding mainly encapsulates some components of grpc,
log tracking, link tracking, traffic h2c conversion, service monitoring prometheus
and other functions,as far as possible to maintain the kiss principle,
so that these components are pluggable of.The framework supports 2 different methods such as http api, grpc server pb.
The protocol called by the client can be http or grpc pb format.
At the same time,it supports the same port, while providing
http services (supporting http1.x protocol requests) and the processing
capabilities of grpc server.# go version
if you use go version < 1.16,please use gmicro tag v1.3.3
else use gmicro tag v2.3.0 higher version.# installation
go get -v github.com/daheige/gmicro/v2
# quick start
please see example demo# grpc-go
https://github.com/grpc/grpc-go# grpc-gateway doc
https://grpc-ecosystem.github.io/grpc-gateway/
# gmicro action
https://github.com/daheige/goapp
https://github.com/daheige/gmicro-demo
Old projects can continue to use the v1 version, and new projects can start to use the v2 version.
Note that the gmicro address has changed, and the v2 version is github.com/daheige/gmicro/v2# change log
| options | desc | time |
|:------------------|:-----------------------------------------|:-----------|
| go mod update | update grpc version to v1.60.1 | 2024-01-10 |
| grpc nodejs tools | update grpc nodejs client code generated | 2024-01-10 |
| grpc mac tools | add mac grpc install shell | 2024-01-10 || options | desc | time |
|:-----------------|:--------------------------------------|:-----------|
| go mod update | update grpc mod | 2023-06-04 |
| grpc metadata | fix request md for RequestInterceptor | 2023-06-04 |
| add x-request-id | fix request x-request-id from md | 2023-06-04 || options | desc | time |
|:----------------|:---------------------|:-----------|
| grpc tools | update docs | 2022-05-15 |
| grpc dockerfile | update go grpc tools | 2022-05-15 || options | desc | time |
|:----------------|:------------------------------------------|:-----------|
| grpc gateway | upgrade grpc gateway to v2.10.0 | 2022-05-11 |
| grpc | upgrade go grpc to v1.46.0 | 2022-05-11 |
| protobuf | upgrade protobuf to v1.28.0 | 2022-05-11 |
| grpc dockerfile | upgrade go to v1.16.15 and protoc v3.15.8 | 2022-05-11 || options | desc | time |
| :----- |:----------------------------------|:-----------|
| grpc gateway | upgrade grpc gateway to v2.4.0 | 2021-06-19 |
| grpc | upgrade go grpc to v1.38.0 | 2021-06-19 |
| protobuf | upgrade protobuf to v1.26.0 | 2021-06-19 |# grpc tools dockerfile
https://github.com/daheige/gmicro-grpc-tools
gmicro v2版本对应的grpc v1.60.1 待更新。。。# install grpc tools
```shell
sh example/bin/grpc_tools.sh
```# Google APIs
# googleapis link:https://github.com/googleapis/googleapis
api/rpc link: https://github.com/googleapis/googleapis/tree/master/google============
Project: Google APIs
URL: https://github.com/google/googleapis
Revision: 3544ab16c3342d790b00764251e348705991ea4b
License: Apache License 2.0
Imported Files
---------------
- google/api/annotations.proto
- google/api/http.proto
- google/api/httpbody.proto
Generated Files
----------------
They are generated from the .proto files by protoc-gen-go.
- google/api/annotations.pb.go
- google/api/http.pb.go# License
MIT