Go 微服务开发学习提纲

公司的后端技术栈准备由PHP转向Go,并采用微服务架构重构老的业务,自己参考网上教程自学了一个月,已经开始具体的开发,现在把过去一个月的学习提纲整理出来,供感兴趣的同学进行参考,同时也会不断进行更新。

  1. go基础 参考
    1. 协程 gorouting
    2. gorouting的通信机制 channel
    3. 并发与并行
    4. go import 下划线
    5. 面向对象
    6. 包机制
      1. go导入包的搜索路径
  2. web编程
    1. 表单提交
    2. 文件上传
  3. web框架
    1. gin
      1. 文档
    2. beego
  4. 微服务框架
    1. go-micro
    2. go-micro 微服务开发中文手册
  5. 工具
    1. govendor
    2. bee:bee 工具是一个为了协助快速开发 beego 项目而创建的项目,通过 bee 您可以很容易的进行 beego 项目的创建、热编译、开发、测试、和部署。
    3. go modules
      1. 加速
        1. goproxy原理
      2. 教程
    4. make
    5. 组件搜索
  6. 问题
    1. go get 慢
    2. vscode插件安装失败
    3. 下载依赖失败可以尝试切换代理:
      1. export GOPROXY=https://goproxy.io
      2. export GOPROXY=
      3. export GOPROXY=https://mirrors.aliyun.com/goproxy/
    4. 使用gitlab私有仓库作为项目的依赖包
  7. 常用链接
    1. 官网
  8. 开源项目
    1. webcron
    2. opms
      1. 测试账号:libai opmsopms123
    3. micro
    4. microservices
      1. 教程
    5. istio-micro
    6. go-microservices-cqrs
  9. 开源组件
    1. gorbac
    2. 权限
      1. casbin
    3. 认证
      1. loginsrv
  10. 教程
    1. 微服务教程
      1. 介绍微服务的基础概念、术语,再创建我们的第一个微服务 consignment-service 的简洁版
      2. Docker 化该微服务并引入 go-micro 框架代替 gRPC 简化服务的实现
      3. docker-compose 来统一管理和部署微服务,引入第三个微服务 user-service 并进行存储数据
      4. 使用 JWT 在微服务之间进行了用户的认证
      5. 使用 go-micro 结合 nats 插件来完成用户创建事件的发布与订阅
      6. 微服务与 web 端交互
      7. docker-compose管理go-micro
        1. docker-compose.yaml
      8. micro API 网关增加JWT鉴权功能
      9. 技术
        1. grpc
          1. 安装
          2. 手动安装
          3. protocol buffers : Google 开源的一套成熟的结构数据序列化机制
            1. 语法
          4. 示例
        2. go mod
          1. go mod正确使用方式
        3. go-micro
          1. 教程
          2. 官网
          3. github
          4. 企业版
          5. 源码阅读
            1. 函数选项模式
          6. 新建服务
        4. go-kit
          1. 实例
        5. OpenTracing
        6. Graphql
        7. gorm
      10. 好文
        1. golang微服务实践
        2. go micro迁移到grpc
        3. 微服务技术栈选型手册
        4. 使用聚合、事件溯源和 CQRS 开发事务型微服务
        5. Service Mesh与Serverless
    2. DDD
      1. 为什么需要领域设计
      2. 领域驱动设计之实战权限系统微服务
      3. 权限系统微服务Go语言版本
      4. DDD理论加编码实践
    3. 微服务设计模式
      1. 微服务
      2. 微服务的模式语言
    4. 规则引擎
      1. 概念
      2. 开源项目
        1. regula
        2. govaluate
    5. 业务引擎bpmn
      1. web在线建模
        1. bpmn.io
          1. github
      2. zeebe
        1. blog
    6. 查询引擎
      1. presto
    7. 权限管理
      1. casbin
  11. 实践
    1. 权限系统
    2. 知乎社区
  12. 部署
    1. docker
  13. 常用命令
    1. 安装项目所有依赖:在项目根目录执行 go get .
    2. 热加载方式运行beego项目:bee run
    3. 查看当前的安装环境: go env
    4. 在proto文件目录下将proto编译为go文件:protoc -I . helloworld.proto --go_out=plugins=grpc:.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值