1.0 介绍与目录

未匹配的标注

介绍

我觉得微服务是什么?什么是微服务这种问题都老生常谈了,随便百度的回答都是各式各样的,我也没什么好介绍的了。开门见山,我就直接说我想做成什么样的。

  • 既然是微服务,那肯定首先要有服务,这个系列重点在微服务的构建,而不是业务逻辑的编写,所以业务逻辑尽可能做到最简单。其次有一个服务即可。
  • 微服务中最重要的是网关,它是所有请求的入口,所以我会用gin框架结合go-micro作为微服务的网关,后期加入链路追踪熔断与降级监控等扩展功能。
  • 微服务就意味着需要快速迭代更新,所以持续交付、集成、部署(CI/CD)是必不可少的
  • 容器编排部署,肯定是使用Kubernetes,这也没啥好说的

基础要求

这个系列开发、部署各占一半,所以需要你能满足以下要求:

  • 熟悉golang语法
  • 了解go-micro
  • 熟悉docker
  • 了解kubernetes
  • 熟悉git
  • 了解jenkins、gitlab

仓库

对应的相关代码和部署文件,已经传至github,欢迎star。

微服务与部署:github.com/guaosi/go-micro-build

持续交付、集成、部署:github.com/guaosi/go-cicd

目录

由于涉及的点很多,一篇文章是肯定写不完的,所以分了几个模块,几个章节进行介绍。

  1. 环境构建
    1.1 涉及的组件、框架介绍
    1.2 环境的准备与安装

  2. 微服务的编写
    2.1 proto文件的编写与生成
    2.2 简单介绍了解go-micro
    2.3 服务编写
    2.4 网关编写

  3. 基于容器的构建运行
    3.1 Dockerfile编写与镜像制作
    3.2 直接Docker容器构建执行
    3.3 Docker Compose下的构建执行
    3.4 Kubernetes下的构建执行

  4. 持续交付、集成、部署(CI/CD)
    4.1 Gitlab的搭建与设置
    4.2 Jenkins的搭建、插件的安装与配置
    4.3 Jenkins构建部署Kubernetes

  5. 网关功能扩展(TODO)
    5.1 链路追踪-jaeger
    5.2 熔断与降级-hystrix
    5.3 监控-prometheus

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~