module
Version:
v0.0.0-...-a201539
Opens a new window with list of versions in this module.
Published: Aug 9, 2024
License: MIT
Opens a new window with license information.
README
¶
go-maxms微服务脚手架
主要功能
- 上手简单,中间件等工具可选
- 支持多环境配置,配置热重载
- 支持http/https/rpc协议,使用gin和grpc
- 支持服务注册与发现,支持随机空闲端口部署
- 支持vault密钥管理
- 支持RSA加密解密,JWT生成,接口签名,接口防抖
- 支持代理转发,熔断限流
- 支持消息队列
- 支持链路追踪
- 具备监控指标接口
- 具备日志系统
- 具备自定义错误模式
- 支持依赖注入
- 具备统一的DB事务处理方式
- 支持跨域访问
- 支持打测试桩,API测试
- 支持分层架构
- 支持CI/CD,jenkins流水线与docker自动化部署
- 支持github工作流
使用指南
查看使用指南了解更多详情。
TODO
防抖与节流(完成-redis签名方式),sentinel实现
etcd注册中心,服务注册与服务发现,心跳检查,consul实现
etcd配置中心,不实现
Prometheus,grafana,jaeger,ELK,OCP4,熔断限流降级
采用第一种鉴权方式,做SWG,修改auth中间件
consul 服务发现随机端口
SGW反向代理
- SGW限流熔断降级 - 日志
SGW防爬虫
- dtm
- 消息队列 - 日志
- SSO
RPC服务集成prometheus
- mysql集群
- redis集群
- 单元测试
ginkgo test
- OCP4
- grpcmock
接口防抖
- token再颁发
- 重构,减少handler层级,自定义错误提示,log重构,s3 vs ec等加入,
TODO 以后
- vault与k8s集成,在登录后读取jwtsecret
- vault与k8s集成,动态数据库账号密码 https://www.youtube.com/watch?v=otNkDHFNWt0
vault使用production模式启动,链接换为https
- 根据contract生成代码,包括type,不含集成其他工具的代码,(必填的非指针,可选的是指针),AST,需要注意是否使用指针类型
- redis账号密码登录
- redis主从哨兵
- redis TTL,持久化,布隆过滤器,雪崩击穿穿透
redis日志收集
RPC的中间件,包括token和签名
- sentinel golang 不支持dashboard,需要二次开发:需建立与sentinel-dashboard通信的客户端(在config.Sentinel中定义地址),监听dashboard配置变化
prom监控 ELKf MQ jaeger consul vault
- sgw负载均衡
- mountebank 需要开一个服务,用读取list的方式,来显示当前运行的stub,提供一个接口(所要查询的端口是否被stub占用)
Directories
¶
Click to show internal directories.
Click to hide internal directories.