Go 语言

搭建 Go 开发环境( 运行环境  &  IDE ) /   命令行工具

  • go generate
  • 生产部署Linux( 推荐 Centos 7,因为它支持虚拟化 Docker )  /    单元测试    /    性能调优

Go 语言,是一门新生语言,从其出现就备受大家的喜爱。             // 中文文档  &  Go 语言学习之路


组织形式( 包 )命名规范  &  常用标准库


并发编程:协程 goroutine( sync.WaitGroup  /  revocer() ) _    channel  /  多路复用 select

  • ( 竞态 )( sync.Mutex  /  sync.RWMutex )
  • 并发控制:singleflight
  • 高性能的协程池:ants

网络编程基于 TCP 协议的 Socket 编程 ):数据包  -  Mac 地址  &  IP 地址  /  域名( Url、DNS )-  端口


Go 工程化实践


路由注册Gin 框架  _  GinSkeleton  _  GinSkeleton-Admin  /  Beego  /  Iris  /  Echo

  • 中间件:JWT  /  常见的限流策略
  • 参数校验:validator 包
  • 静态代码检查 golangci-lint
  • 优雅的关机和重启 gin 项目
  • 使用 swagger 生成接口文档

  • 配置管理:配置管理神器 viper
  • 日志管理:简单的日志服务 log 包    /    zap 日志库
  • 数据管理:MySQLdatabase/sqlsqlx、Gorm )、Redis( go-redis )、mongoDB ...
    • 消息队列:RabbitMq
  • 文件及目录操作
  • 定时任务:cron    /    cronlib

微服务