前言
什么是微服务?【分布式架构的一种】
- Spring Cloud(格局小了)
- 根据业务功能模块把一个单体的项目拆分成许多个独立的项目,每个项目完成一部分业务功能,将来独立开发和部署。独立的项目叫做服务。
- 一个业务需要多个服务,形成一个服务集群。
- 微服务中具有注册中心,负责拉取或注册服务信息。
- 微服务中也有一个配置中心,负责拉取配置信息。
- 微服务还得有一个网关组件(服务网关),一方面是对用户身份进行校验,另一方面就是把用户请求路由到具体的服务。
- 服务接收到请求访问数据库,返回数据给用户。
- 数据库存在高并发就需要加入分布式缓存,把数据库数据放到内存中。
- 负责搜索需要用到 分布式搜索。
- 消息队列异步通信,提高服务并发。
- 分布式日志服务和系统监控链路追踪
- 自动化编译 Jenkins
- 基于 docker打包形成镜像
- 基于 kubernetes、rancher实现自动化部署。
以上才是一整套的微服务技术栈,而不仅仅只是SpringCloud。
学习路线
- 微服务治理【SpringCloud】
- 缓存技术【Redis】
- 异步通信技术【RabbitMQ】
- 搜索技术
- DevOps