架构实战体会,结合《蔡学镛:架构的5个观察角度》

简介: 架构是结构化的表征,结构重在看 ,会看才能发现其中的别有洞天之美。软件架构也是同样的思考方式,需要能够通过多视角观察,才能体会其门道,才能体会架构之美。架构谈来谈去,还是从不同的视角理解结构,以形成准确清晰的结构抽象。

架构实战体会,结合《蔡学镛:架构的5个观察角度》
架构是结构化的表征,结构重在看 ,会看才能发现其中的别有洞天之美。研究物理结构常常说:“横看成岭侧成峰,远近高低各不同”,通过不同的视角,会有不同的表征,如俯视图、正视图、侧视图,我们会有抽象思维能力(刻意练习),快速形成空间抽象图像。
软件架构也是同样的思考方式,需要能够通过多视角观察,才能体会其门道,才能体会架构之美。在我日常的实战中,更多的是关注业务架构(需求)——>产品架构(功能、结构、行为)——>技术架构——>组织架构。重点说一下组织架构,基于架构师的职责应该是技能完成好设计,又能灵活利用资源完成架构的落地,因此我在做产品、技术架构的同时,比较喜欢近一步考虑人员结构,如何让人员的能力与软件架构的工作形成较好的匹配,来顺利的完成架构的实现。以上是软件建设过程的组织架构。随着软件的建设,软件与业务相结合,从康威定律的理解,软件结构会影响组织架构,运行态的软件一定是与维护组织结构有良好的映射,如果不能建立很好的映射,就会面临架构的落地困难问题。
在阅读本文后,对于数据架构、网络架构我接触较少,可能是跟项目属性偏业务更多有所关系,或者我更愿意将数据架构和网络架构放在技术架构中考虑,当然这才建设期数据和网络是技术的重要组成部分,但是站在业务或者运行态的视角考虑,数据架构一定很重要,站在运维视角考虑,网络与部署架构则更加重要。由此可得出一个结论,架构有众多视角,但是更重要的关注什么视角,取决于你的角色,根据角色(业务、技术、运维……)而选择观察关注的侧重点。
文章对于架构观察视角的分类有:鸟瞰架构、剖面架构两个维度,剖面有可以有横剖、侧剖,鸟瞰相对更加宏观,更加能表达蓝图,剖面体现内部结构,体现细节,我对微服务架构的理解其实也是类似的思考,微服务=微服务节点+微服务关系,微服务是一个宏观架构-鸟瞰,节点+关系便是一种图结构的剖面关系,微服务节点有其功能特性也有其内部剖面结构。同样对于微服务,其实可以近一步谈数据架构、领域设计架构、安全架构、网络架构等,这些也是微服务在不同视角下的剖面架构。
文章关于应用系统的分层也有所启发,文章分为:UI、应用、框架、服务、核心、驱动、数据,感觉这个可能是过去架构的最佳实践,首先按应用层和核心层可以分为应用层包含UI、应用、框架、服务;核心层包含核心、驱动、数据,对于核心业务和数据之间架设的驱动层,可以将业务与数据解耦,而让驱动层变为可拔插的架构,数据库这么多年便是这样干的。核心层与应用层的区分可以参看操作系统,内核态和应用态,通过内部接口进行衔接。服务指围绕一些核心业务的功能封装,属于中台性质,一般服务之上是应用,应用是面向业务场景的特性化封装,但是我们可以在之间架设框架层,可以近一步抽象变化,提升服务适应业务场景的开发效率。相对简单指页面层。
以上是结合文章与日常架构工作的一些思考理解,架构谈来谈去,还是从不同的视角理解结构,以形成准确清晰的结构抽象。
参考文章:蔡学镛:架构的5个观察角度
https://mp.weixin.qq.com/s/Co-5ZafexBhd1aYSnfEWDw

相关文章
|
8月前
|
人工智能 监控 前端开发
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
支付宝「AI 出行助手」是一款集成公交、地铁、火车票、机票、打车等多项功能的智能出行产品。
1247 21
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
|
9月前
|
人工智能 Kubernetes 数据可视化
Kubernetes下的分布式采集系统设计与实战:趋势监测失效引发的架构进化
本文回顾了一次关键词监测任务在容器集群中失效的全过程,分析了中转IP复用、调度节奏和异常处理等隐性风险,并提出通过解耦架构、动态IP分发和行为模拟优化采集策略,最终实现稳定高效的数据抓取与分析。
163 2
Kubernetes下的分布式采集系统设计与实战:趋势监测失效引发的架构进化
|
8月前
|
消息中间件 Java Kafka
Java 事件驱动架构设计实战与 Kafka 生态系统组件实操全流程指南
本指南详解Java事件驱动架构与Kafka生态实操,涵盖环境搭建、事件模型定义、生产者与消费者实现、事件测试及高级特性,助你快速构建高可扩展分布式系统。
383 7
|
8月前
|
监控 Java API
Spring Boot 3.2 结合 Spring Cloud 微服务架构实操指南 现代分布式应用系统构建实战教程
Spring Boot 3.2 + Spring Cloud 2023.0 微服务架构实践摘要 本文基于Spring Boot 3.2.5和Spring Cloud 2023.0.1最新稳定版本,演示现代微服务架构的构建过程。主要内容包括: 技术栈选择:采用Spring Cloud Netflix Eureka 4.1.0作为服务注册中心,Resilience4j 2.1.0替代Hystrix实现熔断机制,配合OpenFeign和Gateway等组件。 核心实操步骤: 搭建Eureka注册中心服务 构建商品
1235 3
|
9月前
|
存储 SQL 监控
数据中台架构解析:湖仓一体的实战设计
在数据量激增的数字化时代,企业面临数据分散、使用效率低等问题。数据中台作为统一管理与应用数据的核心平台,结合湖仓一体架构,打通数据壁垒,实现高效流转与分析。本文详解湖仓一体的设计与落地实践,助力企业构建统一、灵活的数据底座,驱动业务决策与创新。
|
8月前
|
消息中间件 Java 数据库
Java 基于 DDD 分层架构实战从基础到精通最新实操全流程指南
本文详解基于Java的领域驱动设计(DDD)分层架构实战,结合Spring Boot 3.x、Spring Data JPA 3.x等最新技术栈,通过电商订单系统案例展示如何构建清晰、可维护的微服务架构。内容涵盖项目结构设计、各层实现细节及关键技术点,助力开发者掌握DDD在复杂业务系统中的应用。
1526 0
|
9月前
|
存储 设计模式 人工智能
AI Agent安全架构实战:基于LangGraph的Human-in-the-Loop系统设计​
本文深入解析Human-in-the-Loop(HIL)架构在AI Agent中的核心应用,探讨其在高风险场景下的断点控制、状态恢复与安全管控机制,并结合LangGraph的创新设计与金融交易实战案例,展示如何实现效率与安全的平衡。
1472 0
|
6月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
6月前
|
监控 Cloud Native Java
Spring Boot 3.x 微服务架构实战指南
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Spring Boot 3.x与微服务架构,探索云原生、性能优化与高可用系统设计。以代码为笔,在二进制星河中谱写极客诗篇。关注我,共赴技术星辰大海!(238字)
1139 2
Spring Boot 3.x 微服务架构实战指南
|
7月前
|
消息中间件 数据采集 NoSQL
秒级行情推送系统实战:从触发、采集到入库的端到端架构
本文设计了一套秒级实时行情推送系统,涵盖触发、采集、缓冲、入库与推送五层架构,结合动态代理IP、Kafka/Redis缓冲及WebSocket推送,实现金融数据低延迟、高并发处理,适用于股票、数字货币等实时行情场景。
1036 3
秒级行情推送系统实战:从触发、采集到入库的端到端架构

热门文章

最新文章