项目简介
本项目是基于Go语言框架的示例项目,包含多个示例代码,覆盖HTTP服务器、RPC服务器与客户端、数据库连接、错误处理、服务注册与发现、追踪和日志管理等方面。借助这些示例,能了解运用Go语言常用框架和库构建与部署分布式服务的方法。
项目的主要特性和功能
- HTTP服务器:利用Gin框架构建HTTP服务器,集成Swagger文档生成功能,便于开发者查看和使用API文档。
- RPC服务:使用RPCX框架创建RPC服务器和客户端,提供基本的RPC服务调用和错误处理功能。
- 数据库操作:通过GORM库连接数据库并执行基本操作。
- 错误处理:借助自定义错误处理库,创建和处理不同类型的错误,如自定义错误、业务错误和常见网络错误等。
- 服务注册与发现:以etcd作为服务注册中心,实现服务的注册和发现。
- 追踪和日志管理:采用OpenTelemetry库进行服务追踪,通过Wzo框架和Gin框架实现日志管理。
安装使用步骤
- 确保已下载本项目的源码文件。
- 安装代码生成插件:
- 执行以下命令安装代码生成插件:
bash go install google.golang.org/protobuf/cmd/protoc-gen-go@latest go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
- 若
protoc-gen-rpcx
安装不成功,直接下载代码编译安装。 - 执行以下命令生成相关文件:
bash protoc -I. -I${GOPATH}/src \ --gofast_out=. --gofast_opt=paths=source_relative \ --rpcx_out=. --rpcx_opt=paths=source_relative *.proto
- 执行以下命令安装代码生成插件:
- 启动服务器:在项目目录下执行
go run server.go
。 - 启动客户端:在项目目录下执行
go run client.go
。 - 根据需求,修改示例代码以适应自己的项目需求。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】