1

单体架构

定义:功能、业务集中在一个发布包里,部署运行在同一个进程中。

优势:

   易于开发  易于测试  易于部署  易于水平伸缩

挑战:

   代码膨胀、难以维护 、构建、部署成本大、新人上手困难、创新困难、可扩展性差

微服务架构

使用一套小服务来开发单个应用的方式,每个服务运行在独立的进程里面,一般采用轻量级的通信机制互联。并且他们可以通过自动化的方式部署。

多微才算微

不可度量的,没有固定的量来进行判断

微服务的特征

   单一职责、轻量级的通信、隔离性、有自己的数据、技术多样性

微服务诞生背景

   互联网行业的快速发展、敏捷开发,精益方法深入人心、容器技术的成熟

微服务架构简易图

图片描述

微服务架构引入的问题及解决方案

     微服务如何通信?、微服务如何发现彼此?、微服务怎么部署?更新?扩容?

微服如何通信

   REST API 、 RPC (如dubbo、dubbox、motan、Thrift、Grpc) 、 MQ

dubbo

图片描述

服务发现

IMAGES
图片描述

springCloud核心组件


Netflix Eureka 注册中心、Netflix Ribbon 负载均衡、Netflix Hystrix 多路器、Netfilix zuul 网关、Spring Cloud Config  配置
















我的头很硬
10 声望1 粉丝

乘风破浪,后会无期