微服务入门(go)
和单体服务对比:里面的服务仅仅用于某个特定的业务
一、领域驱动设计(DDD)
基本概念
领域和子域
领域:有范围的界限(边界)
子域:划分的小范围
核心域:业务系统的核心价值
通用子域:为所有子域提供通用子域
支撑子域:专注于业务的某一重要子域
举例:
- 电商——>领域
- 商品子域,订单子域,销售子域……——子域
- 销售子域——核心子域
- 邮件子域,短信子域——通用子域
界限上下文
目的:如何控制边界
领域模型
领域:对需要解决问题的抽象
模型:针对问题提出的解决方案

领域服务四层架构主要分为接口层,应用层,领域层,基础层四个部分
完整的DDD微服务相关的流程如下:

ps:要领域驱动,而不是数据驱动设计,也不是界面驱动设计
(确实一般的都是数据驱动设计)
ps:要边界清晰,而不是很小的单体,也不能过度拆分
二、Docker
为什么需要docker:
- 部署更新低效
- 环境一致性难保证
- 构建容易分发难(环境上的复刻)
应用场景
- 构建运行环境
- 微服务
- CICD(持续集成和部署)
重要概念
- client——可以运行docker的命令
- 服务器进程——管理镜像和容器
- 镜像仓库——存储镜像的仓库
docker架构的示意图

ps : docker daemon:docker的守护进程
Docker常用命令
◆Docker 仓库操作:pull,push
◆Docker 镜像管理:images,rmi,build
◆Docker生命周期管理:run,start,stop,rm
查看docker版本
sudo docker version
拉取镜像
sudo doc