游客发表

目录
一、技术架构结前言 二、涵盖和演架构演变 1. 单体架构 2. 应用与数据库分离 3. 使用缓存抗量 4. 多应用部署和Nginx反向代理 5. 数据库读写分离 6. 应用分组部署 7. 应用分库设计 8. RPC 分布式部署 9. 应用细分和网关引入 10. 低代码编程和可复用 三、内容架构图?变过?下载 四、总结 五、程总系列推荐一、技术架构结前言
架构,涵盖和演说的内容是开发用的框架吗?
对于刚接触编程的新人来说,可能并能很清楚的变过知道架构是怎么来的,都包括什么内容。程总如果非得说什么架构,技术架构结那么可能就是涵盖和演目前在 IDEA 中打开的工程就是架构。
抛开技术圈内的内容架构而已,盖房子的变过图纸算不算架构、做豆腐的程总步骤算不算架构、结婚的流程算不算架构?归纳得出,所有的这些步骤都在计算成本、耗材、执行和产出,亿华云那么架构就可以看做是一个用于完成目标结果的指导蓝图,现在在放到技术架构的层面来看,架构就不只是我们研发人员用到的技术框架,还需要根据场景、规模,设定技术选型、实施标准、部署结构,综合来完成一个项目的交付。

综上,就是我们研发人员在做架构设计时要考虑的核心内容,随着我们技术的不断迭代也会有更多更新的思想,就像20年热起来中台、21年热起来的低代码,都是为了更好的让架构降本增效的实施方案。
但如果想了解和学习架构,最好还是要从它是一颗小树苗时候看起,看看它是如何一点点长大的。在头脑中有了一个这样的架构体系,也能让大家更好的理解和设计你需要的架构。
二、架构演变
1. 单体架构

2. 应用与数据库分离

3. 使用缓存抗量

4. 多应用部署和Nginx反向代理

5. 数据库读写分离

体量:
技术:tomcat、weblogic、Java、Oracle、MVC、Redis、Nginx
描述:数据库的读写分离设计,更多的是因为某些业务场景需要大量的事务性写入,影响到需要读操作的业务。但读写分离的设计并没有太大程度上提升系统性能,因为很大程度的读操作已经使用 Redis 抗住。不过这样的设计思路却为后续的架构模型提供了新的思路。
6. 应用分组部署

7. 应用分库设计

体量:
技术:tomcat、weblogic、Java、Oracle、MVC、Redis、Nginx、MyCat
描述:当应用按照不同的业务各自系统拆分以后,接下来的瓶颈就在于已经独立的应用用户体量依旧很大,对应的数据库热连接数持续增高。所以在当前条件下,开始设计应用分库操作,同时后可能也会在这个阶段引入分表操作。这样一来单个应用的负载能力又得到了一大截的提升,但是拆库以后也需要引入分布式事务、数据汇总等其他技术的使用,来解决拆库新增的问题。
8. RPC 分布式部署

体量:
技术:tomcat、weblogic、Java、Oracle、MVC、Redis、Nginx、MyCat、RPC、LVS/F5
描述:在系统不断的再精细化设计以后,其实某些服务并不需要持续的连库操作,它们可能更多的是业务逻辑的包装,同时这些数据库层的操作应用属于底层系统,那么就可以把这样系统用于连库操作,而上层服务通过RPC框架来连接这样的服务。那么,现在就可以通过分布式部署的方式,提升整体的服务性能。
9. 应用细分和网关引入

体量:
技术:tomcat、weblogic、Java、Oracle、MVC、Redis、Nginx、MyCat、RPC、LVS/F5、网关、MQ、分布式任务、Elasticsearch
描述:从上到下的整个架构演变过程,我们不断的拆分应用、单独部署一直到应用细分,都是在不断的提升应用服务的能力,让各自应用体负责独立的事情。这个阶段已经开始体现出微服务的能力了,同时这个阶段也引入了上层的网关统一接入和下层的数据使用能力。
10. 低代码编程和可复用

体量:
技术:tomcat、weblogic、Java、Oracle、MVC、Redis、Nginx、MyCat、RPC、LVS/F5、网关、MQ、分布式任务、Elasticsearch、SDK、低代码、支撑服务
描述:在目前这个阶段服务框架基本已经可以很好的支撑用户体量,所以也开始考虑如何更高效的开发和交付问题。那么也就引入了服务编排、服务治理以及通用的模块、组件和中间件。而这些设计其实压缩来看基本就是以前你开发的一个应用而已,不过把所有非业务逻辑的通用性功能不断的拆分出来了,再通过这些细分的组件和服务能力的编排,提供所需接口,这样一来也就大大的提升了可持续交付集成的效率。
三、架构图下载
有小伙伴反馈看了架构图,也有了点自己的想法,但是动手画的时候就很懵,不知道从哪开始。那么小傅哥把画的架构图原稿分享给大家,可以让感兴趣的小伙伴下载使用。
四、总结
本章也是小傅哥在整理系列架构内容资料的一个总结,让新人码农对架构有一个从小到大的认识。在总结整理时也结合现在的架构简化了一部分内容,因为只有剥丝抽茧的看懂最主干的内容,大家才好不断的扩展枝叶。 从演变的过程我们可以看到,业务体量会影响部署,部署形态会改变架构,架构会呼应开发方式,最终语言只是当前最合适某种架构的工具,各项技术栈的运用也是为了技术需求而存在。 最后,就是如果你也想让图表达出你的意思,那么可以尝试画一画、总结总结,找到一种能适合你表达出结果的画图结构。相关内容
随机阅读
热门排行
友情链接