技术架构
技术架构是对某一技术问题解决方案的结构化描述,包括组件结构及其交互关系。它涵盖部署方案、存储方案、缓存方案、日志方案等多个方面,旨在通过组织人员和技术,以最低的成本满足需求和应对变化,保障软件的稳定高效运行。
一般技术架构,需要考虑如何实现这些功能,一部分是基础设施,一部分是系统设计。
- 基础设施包括选择什么语言、什么框架、什么数据库,以及消息队列、搜索引擎、部署方案等等。
- 系统设计是否采用微服务、事件驱动、CQRS 模式、商品、订单、物流几个模块间怎么通信,实现数据统计分析是几个模块分别实现还是统一一个服务实现等等。
工程架构
工程架构则更侧重于如何将复杂的系统拆分成若干简单的部分,通过抽象和分解来降低开发成本。工程架构通过分层设计、微服务架构等方法,帮助组织人员高效协作,并有效组织各种技术和工具。
数据架构
数据架构,这个会受到技术架构的影响,比如是否用了 Flink 流处理、需不需要 Redis 做缓存、要不要 Druid 做时序存储,各个业务是否拆库拆表,垂直分表还是水平分表。算是对技术架构的支撑,一部分在基础设施中,一部分在细节设计中。
应用场景
技术架构在企业数字化建设中扮演重要角色,特别是在业务、应用、数据等上层架构设计意图的实现中。它需要适应当前企业数字化建设的主流趋势和新技术的发展
工程架构则广泛应用于复杂软件项目的开发中,通过分层设计、微服务架构等方式,将大型应用拆解成多个小型、独立的服务组件,每个组件负责特定的业务功能,相互协作驱动整个系统。这种架构模式特别适用于需要快速响应市场变化和高并发处理的场景
相关文章:
https://blog.csdn.net/coffee437/article/details/138349909