单体应用vs微服务
所属分类 architecture
浏览量 1529
单体应 monolith application
单体应用优点
容易部署 整个项目就一个war包
容易运行/测试
单体应用缺点
逻辑复杂、模块耦合、代码臃肿,修改难度大,版本迭代效率低下
系统启动慢,一个进程包含了所有的业务逻辑,涉及到的启动模块过多,导致系统的启动、重启时间周期过长
系统错误隔离性差、可用性差,任何一个模块的错误均可能造成整个系统的宕机
可伸缩性差;系统的扩容只能只对这个应用进行扩容,不能做到对某个功能点进行扩容
线上问题修复周期长;任何一个线上问题修复需要对整个应用系统进行全面升级
微服务架构优点
分而治之;单个服务功能内聚,复杂性低;方便团队的拆分和管理
可伸缩;能够单独的对指定的服务进行伸缩
迭代周期短;支持快速的迭代开发
独立部署,独立开发
微服务架构缺点
可维护性差;应用流程常常垮多个微服务,不易进行问题的定位
效率相对低,团队依赖强,一个服务的版本延迟会拖慢整个应用的开发周期
开发难度大;垮服务的调用通常是不同的机器,甚至是不同的机房,开发人员需要处理超时、网络异常等问题
应用级别的需求变动常常波及多个服务;
分布式事务的支持
上一篇
下一篇
微服务架构技术栈
Spring Cloud Eureka 常用配置及说明
三十条架构设计原则
nacos介绍
nacos Java客户端使用
threadlocal实例及原理