English | 中文
moke-kit 是一个用于构建微服务/单体应用的基础框架。可以按照单体应用开发,生产环境部署为微服务模式。像玩LEGO积木一样,你可以按需灵活拼接不同类型的服务。
- 使用 uber/fx 实现IOC(依赖注入控制反转),可以按需组装不同类型服务。
- 内置TLS,mTLS,快速构建Zero Trust安全模型。
- 内置基于Token的认证,支持JWT token。
- 内置中间件(rate limit, open telemetry, auth middleware,logging, panic recovery等)。
- 内置Cache-Aside模式数据缓存机制。
- 内置Compare-and-swap保证数据库操作的一致性。
- 内置交互式命令行客户端,方便独立测试服务接口。
- 基于buf一键生成proto, grpc, gateway, swagger和客户端的协议文件。
- Servers:
- gRPC
- HTTP[grpc-gateway]
- TCP [zinx]
- Websocket [zinx]
- KCP [zinx]
- MQ:
- Orm:
- Cache:
- redis
- dragonfly
- Third Party:
- 安装 gonew:
go install golang.org/x/tools/cmd/gonew@latest
- 创建自己的项目:
gonew github.com/gstones/moke-layout your.domain/myprog