1.单体应用
MVC模式构建的单体应用适合项目初期,能够方便的进行开发,部署,测试。随着业务的增长与访问量的增加,单体应用存在的问题也会暴露出来。
- 单体应用的维护:
单体应用中,大部分逻辑部署在一个集中化,单一的环境或服务器中运行。单体应用通常很大,由一个大型团队或多个团队维护。庞大的代码可能给开发人员增加开发成本。开发过程中使用的开发环境和容器不堪重负,降级开发效率。 - 部署:
单体应用需要编译,部署话费很长时间,一个小小的修改就能造成编译并部署整个项目。 - 资源控制:
单体应用中,当请求量过大导致单台服务器无法支撑时,一般会将单体应用部署在多台服务器形成服务集群,并通过Nginx反向代理实现负载均衡。集群中的每个服务必须部署完整的应用,但实际业务需求中仅有部分功能频繁使用。 - 稳定性:
单体应用中如果出现一个小问题,有可能使整个系统崩溃。 - 存在的问题:
高并发下服务器容易宕机
2.SOA面向服务的架构
- 简介:
面向服务的架构:它是一种设计方法,其中包含多个服务,服务之间通过相互依赖最终提供一