glacier-toolchain

module
v0.0.0-...-bf04ae1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2022 License: MIT

README

glacier-toolchain

微服务工具箱, 构建微服务中使用的工具集

  • http框架: 用于构建领域服务的路由框架, 基于httprouter进行封装
  • 异常处理: 定义API Exception
  • 日志处理: 封装zap, 用于日志处理
  • 加密解密: 封装cbc和ecies
  • 自定义类型: ftime方便控制时间序列化的类型, set集合
  • 服务注册: 服务注册组件
  • 缓存处理: 用于构建多级对象缓存
  • 事件总线: 用于系统事件订阅与发布
  • 链路追踪: 工具链提供的组件都内置了链路追踪 快速上手 首先你需要安装工具链, 所有的功能都集成到这个CLI工具上了
 go install github.com/yamakiller/glacier-toolchain/cmd/glacier-toolchain

按照完成后, 通过help指令查看基本使用方法

$ glacier-toolchain -h
glacier-toolchain ...

Usage:
glacier-toolchain [flags]
glacier-toolchain [command]

Available Commands:
enum        枚举生成器
help        Help about any command
init        初始化

Flags:
-h, --help      help for glacier-toolchain
-v, --version   the glacier-toolchain version

Use "glacier-toolchain [command] --help" for more information about a command.

启用看一看

$ make run
2020-06-06T20:03:00.328+0800    INFO    [INIT]  cmd/service.go:151      log level: debug
2020-06-06T20:03:00.328+0800    INFO    [CLI]   cmd/service.go:93       loaded services: []
Version   :
Build Time:
Git Branch:
Git Commit:
Go Version:

2020-06-06T20:03:00.328+0800    INFO    [API]   api/api.go:66   http endpoint registry success
2020-06-06T20:03:00.328+0800    INFO    [API]   api/api.go:100  HTTP服务启动成功, 监听地址: 0.0.0.0:8050

提升效率自动化的生成
创建项目

glacier-toolchain project init

构建协议

glacier-toolchain proto generate --bin=<proto可执行文件> --include=<proto 基础库文件> --pkg=<项目包名> <需要搜索的路径>
例如:
glacier-toolchain proto generate --bin=./bin/protoc.exe --include=./bin/protobuf/include --pkg=github.com/yamakiller/glacier-center  apps/*/pb/*.proto

构建协议标签

glacier-toolchain proto generate-tag <需要搜索的路径>
例如:
glacier-toolchain proto generate-tag apps/*/*.pb.go

构建enum

glacier-toolchain generate enum <-m:是否生成编解码> <-p:是否构建协议扩展> <构建文件路径>
例如:
glacier-toolchain generate enum -p -m apps/*/*.pb.go

构建Proto http

protoc --proto_path=. --proto_path=<GOPATH/src> --go-http_out=<生成文件输出路径> --go-http_opt=module="<项目包名>" <需要生成的协议文件>
例如:
protoc.exe --proto_path=. --proto_path= D:\workspace\go\src --go-http_out=. --go-http_opt=module="github.com/yamakiller/glacier-auth" apps/application/pb/service.proto

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL