Another excellent micro service framework
- RESTful API (base on echo/v4)
- gRPC & gRPC gateway service & Swagger document generation
- Service discovery (base on ETCD/v3)
- gRPC & gRPC-Gateway & RESTful API all in one tcp port, mux via
cmux
- Builtin middlewares & easily to extended
- Prometheus & Tracing (jaeger) & Sentry integrated
- Embed toolset for code generation (e.g. GORM & model CRUD & project layout)
Install toolset.
go install github.com/xinpianchang/xservice/tools/xservice@latest
# smaller binary size commands with -ldflags="-s -w"
go install -ldflags="-s -w" github.com/xinpianchang/xservice/tools/xservice
Create new project via toolset.
mkdir hello
cd hello
xservice new --module github.com/example/hello
Open the generated README.md
file, following the initialize steps and happing coding. 🎉
- go-zero https://github.com/zeromicro/go-zero (inspired)
- micro https://github.com/asim/go-micro (inspired)
- GORM http://gorm.io/
- Echo https://echo.labstack.com/
- validator https://github.com/go-playground/validator
- gRPC generate tool/buf https://buf.build/
- gRPC validate https://github.com/envoyproxy/protoc-gen-validate
- RESTful validate https://github.com/go-playground/validator
- gRPC-Gateway https://grpc-ecosystem.github.io/grpc-gateway/
- jaeger https://www.jaegertracing.io/