单体应用和微服务应用区别

单体应用优点:

便于共享:包含所有功能,便于在团队之间共享。

易于测试:一旦部署,所有服务都可以使用了,简化测试过程,没有额外依赖。

易于部署:只需将单个文件复制到单个目录下。

单体应用缺点:

复杂性高:由于是单个归档文件,整个项目包含很多模块,模块边界模糊,依赖关系不清晰,代码混轮堆在一起,使得整个项目非常复杂,编译时间更长。

扩展能力受限:单体应用只能作为一个整体进行扩展,无法根据业务模块的需要进行伸缩。

 

微服务架构优点

易于开发和维护:一个微服务只会关注一个特定的业务功能,所以业务清晰,代码量较少。开发和维护单个微服务相对简单。

单个微服务启动较快。

局部修改容易部署:单体应用只要修改,就要重新部署整个应用。对某个微服务进行修改,只需要重新部署这个服务即可。

按需伸缩:可根据需求,实现细粒度的扩展。

微服务架构缺点:

运维需求高。

使用微服务构建的是分布式系统。系统容错、网络延迟、分布式事务等都会带来巨大问题。

接口调整成本高,微服务之间通过接口进行通信。修改某一个微服务的API,可能所有用到这个接口的微服务都需要进行调整。

 

posted @ 2021-09-16 14:47  Dream's  阅读(885)  评论(0编辑  收藏  举报