微服务学习入门——(一)

架构演变

项目架构随着时间的演进,出现了三个:单体架构,SOA,微服务。

单体架构:即我们日常学习接触到的最简单的,传统的一种架构方式,在中小型项目里出现居多。一个归档包里包含了整个项目所有功能的单体应用,通常称作单体应用,比如个人的小型博客,打成war包就可以直接上传到服务器里进行发布。

随着社会变化,各种应用的体量增大,单体架构逐渐不再适用。

单体架构的缺点:

什么是微服务?


把一个庞大的系统拆分为小的可以独立应用的服务,各个服务之间采用HTTP等轻量级的机制类相互通信。这些服务围绕业务功能进行构建,通过全自动部署进行独立部署。各个服务可以采用不同的语言编写,使用不同的数据存储技术。

微服务具备的特性

l1. 每个微服务可独立运行在自己的进程里;

l2. 一系列独立运行的微服务共同构建起了整个系统;

l3. 每个服务为独立的业务开发,一个微服务一般完成某个特定的功能,比如:订单管理、用户管理等;

l4. 微服务之间通过一些轻量的通信机制进行通信,例如通过REST API或者RPC的方式进行调用。

微服务优点

l1易于开发和维护

l2启动较快

l3局部修改容易部署

l4技术栈不受限

l5按需伸缩

l6DevOps

微服务带来的挑战

l运维要求较高

l分布式的复杂性

l接口调整成本高

l重复劳动

微服务设计原则

l单一职责原则

l服务自治原则

l轻量级通信原则

l接口明确原则

猜你喜欢

转载自blog.csdn.net/ido1ok/article/details/84316891