三层应用与单块架构
1.1 三层应用架构的发展
1.1.1 三层应用架构的发展
- 层能够被单独构造
- 每层具有区别其他层的显著特点。
- 层与层之间能够相互链接,互相支撑,相互作用,相互协作,从而构成一个整体,
- 层的内部可以被替换成其他可工作的部分,但对整体影响不大
1.1.2 什么是三层架构
三层架构通常包括表示层,业务逻辑层以及数据访问层。
表示层
表示层部分通常指当用户使用应用程序时,看见的,听见的,输入的或者交互的部分。
业务逻辑层
业务逻辑层部分是根据用户输入的信息,进行逻辑计算或者业务处理的部分。
数据访问层
在用户同应用程序交互的过程中,或产生数据。这类数据需要通过某些机制被有效地保存,并在将来能够被重复使用,或者提供给其他系统。
1.1.3 三层架构的优势
- 解决应用程序中代码间调节复杂,代码职责不清的问题。
- 从某种程度上解决了企业内部如何有效根据技能调配人员,提高生产效率的问题。
1.2 单块架构
1.1.1 什么是单块架构
对于功能集中,代码和数据中心化,一个发布包,部署后运行在同一进程的应用程序,通常称之为单块架构应用
例如:传统的J2EE项目说构建的产品或者项目,存在的形态一般是WAR包或者EAR包
定义:是在分层软件架构设计的系统基础之上,从部署模式,运行模式角度来考虑
1.1.2 单块架构的优势
易于开发
例如 NetBeans,Eclipse,IDEA等,他们都能有效加载并配置整个引用程序的依赖,方便开发人员开发,运行,调试等。
易于测试
所有的功能都运行在一个进程中,启动集成开发环境或者将发布包部署到某一环境,一旦启动该进程,就可以立即开始系统测试或者功能测试。
易于部署
由于所有的功能最终都会发布生成一个包,因此只需复制该软件包到服务器相应的位置即可。
易于水平伸缩
1.1.3 单块架构面临的挑战
维护成本增加
持续交付周期长
新人培养周期长
技术选型成本高
可扩展性差
构建全功能团队难
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下