06.07 首席架构师,应用架构如此设计

无架构,不系统,架构是大型系统的关键。从形上看,架构是系统的骨架,支撑和链接各个部分;从神上看,架构是系统的灵魂,深刻体现业务本质。

首席架构师,应用架构如此设计

架构设计这项工作的主要成果,应该是确保开发人员能够高效高质量的开展开发工作,且只要开发人员遵从架构设计文档就能确保所开发系统的稳定性和性能不会有致命问题,否则后续如果发现要进行设计层面的返工或重构,代价往往是高昂的。当然重构也有不同级别:代码级、模块级、子系统级、架构级;不同级别影响层面不同,适当的代码级甚至模块级重构,是可接受甚至推荐的。

首席架构师,应用架构如此设计

系统采用什么样的应用架构,受业务复杂性影响,包括企业发展阶段和业务特点;同时受技术复杂性影响,包括IT技术发展阶段和内部技术人员水平。业务复杂性(包括业务量大)必然带来技术复杂性,应用架构目标是解决业务复杂性的同时,避免技术太复杂,确保业务架构落地。

首席架构师,应用架构如此设计

分布式架构每个应用内部高内聚,独立开发、测试和部署,支持开发敏捷;同时应用之间松耦合,业务边界清晰,业务依赖明确,支持大项目并行开发,实现业务敏捷。

在分布式架构中,应用的表示层和API没有物理分离,需要同时满足自身业务需求和关联业务需求,相互影响,比如API接口会随着外部应用的需求经常变化,这会导致整个应用重新部署。

首席架构师,应用架构如此设计

用架构,需要站在业务和技术中间,在正确的时间点做正确的架构选择,保证系统有序进化。

通常情况下我们在系统分离式只是以接口的方式提供服务,供其他的模块进行使用。在模块内部有大量的信息是不要向外部暴露的,所以模块在设计时访问域的定义就要划分好,防止因为访问域的定义而对模块的信息造成破坏。

首席架构师,应用架构如此设计

可读性、可维护性、极高的可复用性,所以要求我们在设计时尽量去满足这二个基本原则。而帮我去达到这二个准则的途径就是通过功能分离及细化来实现这样的准则。

北京尚学堂科技有限公司成立,现旗下业务覆盖:JAVA开发技术培训、高级架构师培训、大数据云计算培训、人工智能python培训、H5前端开发培训、项目开发业务、团队激励、在线教育集群业务。尚学堂12大精英团队+各类实战项目,真正实现1+1>10的目标效果。帮助学员迅速成长,持久腾飞,成就学员“高富帅”人生。


分享到:


相關文章: