【学习笔记】微服务的认识

175 阅读2分钟

微服务

① 微服务是一个架构风格。

② 把一个项目拆分成独立的多个服务;多个服务是独立运行,每个服务占用独立进程。

适合使用微服务的业务项目

由功能上
微服务可以按照业务功能本身的独立性来划分,如果系统提供的业务是非常底层的,如:操作系统内核、存储系统、网络系统、数据库系统等等,这类系统都偏底层,功能和功能之间有着紧密的配合关系,如果强制拆分为较小的服务单元,会让集成工作量急剧上升,并且这种人为的切割无法带来业务上的真正的隔离,所以无法做到独立部署和运行,也就不适合做成微服务了。除此之外,其他业务项目都可以适合做微服务。

比较流行的微服务开发框架

Spring Cloud :现在非常流行的微服务架构

Dubbo:开源分布式服务框架

Dropwizard:关注单个微服务的开发

微服务与单体架构区别

① 单体架构所有的模块全都耦合在一块,代码量大,维护困难。  
微服务每个模块就相当于一个单独的项目,代码量明显减少,遇到问题也相对来说比较好解决。

② 单体架构所有的模块都共用一个数据库,存储方式比较单一。  
微服务每个模块都可以使用不同的存储方式(比如有的用redis,有的用mysql等),数据库也是单个模块对应自己的数据库。

③ 单体架构所有的模块开发所使用的技术一样。  
微服务每个模块都可以使用不同的开发技术,开发模式更灵活。