学习建筑笔记8和9: 建筑设计的三个原理和案例

电脑杂谈  发布时间:2020-06-27 22:19:40  来源:网络整理

信息架构的设计思路_架构设计_网络架构设计原则

编程和体系结构之间的最大区别是“不确定性”. 确定了通过编程编写的程序,并且不同的体系结构可能适合特定的情况.

由于不同的体系结构可能适合或似乎适合于要求,或者由于团队成员对某种技术栈更加熟悉,因此在架构师上面临多种选择困难. 这些选择中的任何一个都可能是正确的,但是对于大多数选择而言,并没有一套通用的规范. 他们大多数依靠经验和直觉.

在设计架构时,您不能总是以大型制造商的标准为目标,而总是想成为行业的领导者. 但这通常会忽略业务的实际需求,并放大工作量,导致失败.

通常没有业务量,也不会有太多的人力资源来支持“大架构”. 业界的顶级架构都是通过逐步改进而获得的. 好的体系结构不是想象中的,而是业务场景和压力. 强制退出

没有生意,空谈结构无法取得结果.

团队压力有时使我们变得有意或无意地变得更加复杂. 例如,Zookeeper的主从策略始终使人们心跳加快,从而使更多的人感到更加可靠,并选择更复杂的解决方案.

软件领域的复杂性体现在结构和逻辑的复杂性上.

结构复杂的系统通常具有以下特征:

组件的数量很复杂,组件之间的关系也很复杂. 定位问题很困难

为了解决结构复杂性的问题,我们的第一个想法是减少的数量,但过少会引入新的问题.

如果组件(或对象或功能)的逻辑过于复杂,也会引起问题. 例如可伸缩性问题,协作问题.

信息架构的设计思路_架构设计_网络架构设计原则

通常,企业开发体系结构的第一次改革是因为组件太复杂,需要对系统进行分段.

复杂的组件也可能使用复杂的算法,因此难以理解和改进.

据说软件体系结构起源于体系结构. 但是一旦构建完成,它就不会改变,并且软件必须根据业务的发展而不断变化.

由于业务总是在变化,因此架构本质上不能是静态的. 因此,不会说复制企业的结构可以一劳永逸.

软件体系结构需要经历以下过程:

设计的体系结构满足当前的业务体系结构并不断进行迭代. 充分利用它并消除其残渣可能需要重构和重写,但总有一些事情要继续

淘宝技术开发经验丰富的“个人网站”->“ Oracle /支付宝/旺旺”->“ Java时代1.0”->“ Java时代2.0”->“ Java时代3.0”->“分布式时代” << /

2003年,淘宝网急着上网,直接购买了产品和服务. 没有太多时间考虑性能,稳定性等问题,因为该项目已启动,迅速启动并抢占市场是第一个需求.

淘宝实际上遵循“适当原则”和“简单原则”.

目前,距离发布还只有半年的时间. 根据“适当原则”和“简单原则”,最简单的购买和购买方式.

架构设计_信息架构的设计思路_网络架构设计原则

由于购物的普及和业务的迅速增长网络架构设计原则,MySQL无法支持它,因此它被Oracle取代,具有大容量,稳定性,安全性和高性能.

如果数据量大且存储空间不足,请购买NAS并添加Oracle RAC以实现负载平衡.

一开始,选择Java的原因是连接到Oracle的开放源代码库(SQL Relay)的PHP始终处于死锁状态.

PHP + Apache将为每个请求生成一个到的链接,没有连接池,因此性能低下,所以我选择了SQL Relay.

该技术的问题严重影响了业务的发展,必须解决.

回顾这一改革,选择Java也在为人才开辟道路,因为招聘要比Java好得多.

在业务发展的这个时候,购买和购买不能再解决容量,性能和成本方面的问题.

在性能方面,Oracle从未有过文本搜索的性能,而且成本问题更为致命.

根据“进化原理”,技术人员需要进行审查和重建.

架构设计_信息架构的设计思路_网络架构设计原则

淘宝还做了很多优化工作,例如数据子,放弃EJB,引入Spring,添加缓存,添加CDN等.

此时,业务规模足以使技术人员进入IOE(IBM,Oracle,EMC),这将启动自主研发的技术,从而可以大大降低技术成本.

移动QQ的发展大致分为四个阶段: 十万个,一百万个,一千万个和一亿个. 基本上,是由用户规模引起问题并迫使技术体系结构升级.

在这里,我向您推荐一个Java体系结构小组: 725633148. 我将分享一些高级架构师录制的视频记录: Spring,MyBatis,Netty源代码分析,高并发,高性能,分布式,微服务架构原理,JVM性能优化,分布式架构等已成为建筑师必不可少的知识系统. 您还可以获得免费的学习资源,现在受益匪浅!

一开始,移动QQ背景是一种通用的体系结构,遵循“适当的原则”和“简单的原则”.

2001年,同时QQ用户数超过100万,出现了问题:

访问服务器的性能非常严格,内存,CPU,网卡带宽和流量已成为瓶颈. 一台服务器不能支持所有用户(注册用户也无法保存)

根据“进化原理”重建:

信息架构的设计思路_架构设计_网络架构设计原则

2005年,同时QQ用户数超过1000万网络架构设计原则,并出现了新问题:

同步流量太大,状态同步服务器遇到了独立的瓶颈. 联机状态信息量太大,导致单个服务器的存储空间不足. 单个状态同步服务器不能支持所有联机用户. 单个访问服务器不能支持所有联机用户. 状态信息

架构再次“进化”:

2010年,同时QQ用户数超过1亿,并且出现了问题:

灵活性差,功能扩展困难,无法支持某些关键功能,这些功能以前已经在原来的基础上进行了升级,现在需要重新设计

因此,“进化”新的结构

存储架构:

通信体系结构:

了解了建筑设计的三项原则和面对“不确定性”的两个案例.

让我们先做

如果有任何错误,请指出,要特别注意炸鱼.

在这里,我向您推荐一个Java体系结构小组: 725633148. 我将分享一些高级架构师录制的视频记录: 有Spring,MyBatis,Netty源代码分析,高并发,高性能,分布式,微服务体系结构原理. ,JVM性能优化,分布式体系结构等已成为建筑师必不可少的知识系统. 您还可以获得免费的学习资源,现在受益匪浅!


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-260717-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 晋灵公
        晋灵公

        不然不会说出解决男女失衡解决办法是公用妻子

      • 陈雅
        陈雅

      热点图片
      拼命载入中...