从集中式到分布式

Shell脚本if条件语句详解:从语法到实战避坑指南 在Linux系统管理和自动化运维中,Shell脚本是实现流程控制的核心工具。其原理在于通过条件判断、循环等结构,将零散命令组织成可自动执行的逻辑单元,从而提升运维效率与系统可靠性。从技术价值看,掌握Shell流程控制是进行自动化部署、日志分析、监控告警等工程实践的基础。其中,if条件语句作为最常用的分支控制结构,能够根据文件状态、命令执行结果、变量值等动态决定脚本执行路径,是实现复杂业务逻辑的关键。本文聚焦if-then-elif-else的完整语法解析,结合文件测试、字符串比较、数值判断等高频操作,深入讲 阅读详情


前言

随着计算机系统规模变得越来越大,将所有业务单元集中部署在一个或者若干个大型机上的体系结构物,已经越来越不能满足当今计算机系统,尤其是大型互联网系统的快速发展,各种灵活多变的系统架构模型层出不穷。同时,随着微型计算机的出现,越来越多廉价的PC机成为了各大IT企业架构的首选,分布式的处理方式越来越受到业界的青睐----计算机系统正在经历一场前所未有的从集中式到分布式架构的变革。

 

从集中式到分布式

自从20世纪60年代大型主机被发明出来以后,凭借其超强的计算和I/O处理能力以及在稳定性和安全性方面的卓越表现,在很长一段时间内,大型主机引领了计算机行业以及商业计算领域的发展。在大型主机的研发上最知名的当属IBM,其主导研发的革命性产品System/360系列大型主机,是计算机发展史上的一个里程碑,与波音707和福特T型车齐名,被誉为20世纪最重要的三大商业成就,IT界进入了大型主机时代。

伴随着大型主机时代的到来,集中式的计算机系统架构也成为了主流。在那个时候,由于大型主机卓越的性能和良好的稳定性,其在单机处理能力方面的优势非常明显,使得IT系统快速进入了集中式处理阶段,其对应的计算机系统称为集中式系统。但从20世纪80年代以来,计算机系统向网络化和微型化的发展日趋明显,传统的集中式处理模型越来越不能适应人们的需求,具体表现在:

1、大型主机的人才培养成本非常高,通常一台大型主机汇集了大量精密的计算机组件,操作非常复杂,这对一个运维人员掌握其技术细节提出了非常高的要求

2、大型主机也是非常昂贵的,通常一台配置较好的IBM大型主机,其售价达到上百万美元甚至更高,因此也只有像政府、金融和电信等企业才有能力采购大型主机

3、集中式有非常明显的单点问题,大型主机虽然在性能和稳定性方面表现卓越,但并不代表其永远不会出故障。一旦一台大型主机出现了故障,那么整个系统将处于不可用的状态,后果相当严重。最后,随着业务的不断发展,用户访问量迅速提高,计算机系统的规模也在不断扩大,在单一大型主机上进行扩容往往比较困难

4、随着PC机性能的不断提升和网络技术的快速普及,大型主机的市场份额变得越来越小,很多企业开始放弃原来的大型主机,而改用小型机和普通PC服务器来搭建分布式计算机

对业内新闻比较关注的,一定知道阿里巴巴在2009年发起了一项"去IOE"运动。因为阿里巴巴从2008年开始各项业务都进入了井喷式的发展阶段,这对于后台IT系统的计算与存储能力提出了非常高的要求,一味地针对小型机和高端存储进行不断扩容,无疑会产生巨大的成本。同时,集中式的系统架构体系也存在着诸多单点问题,完全无法满足互联网应用爆炸式的发展需求。因此,为了解决业务快速发展给IT系统带来的巨大挑战,从2009年开始,阿里集团启动了"去IOE"计划,其电商系统开始正式迈入了分布式系统时代。

 

集中式

所谓集中式系统就是指由一台或多台主计算机组成中心节点,数据集中存储于这个中心节点中,并且整个系统的所有业务单元都集中部署在这个中心节点上,系统所有的功能均由其集中处理。也就是说,集中式系统中,每个终端或客户端及其仅仅负责数据的录入和输出,而数据的存储与控制处理完全交由主机来完成。

集中式系统最大的特点就是部署结构简单,由于集中式系统往往基于底层性能卓越的大型主机,因此无需考虑如何对服务进行多个节点的部署,也就不用考虑多个节点之间的分布式协作问题。

 

分布式

分布式系统如何定义?这里引用一下Distributed Systems Concepts and Design(Third Edition)中的一句话:"A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messages"。从这句话里面我们可以看到几个重点:

1、组件分布在网络计算机上

2、组件之间仅仅通过消息传递来通信并协调行动

严格讲,同一个分布式系统中的计算机在空间部署上是可以随意分布的,这些计算机可能被放在不同的机柜上,也可能在不同的机房中,甚至分布在不同的城市。无论如何,一个标准的分布式系统在没有任何特定业务逻辑约束的情况下,都会有以下几个特征:

1、分布性

分布式系统中的多台计算机都会在空间上随意分布,同时,及其的分布情况也会随时变动

2、对等性

分布式系统中的计算机没有主/从之分,既没有控制整个系统的主机,也没有被控制的从机,组成分布式系统的所有节点都是对等的。副本(Replica)是分布式系统最常见的概念之一,指的是分布式系统对数据和服务提供的一种冗余方式。在常见的分布式系统中,为了对外提高可用的服务,我们往往会对数据和服务进行副本处理。数据副本是指在不同的节点上持久化同一份数据,当某一个节点上存储的数据丢失时,可以从副本上读取到该数据,这是解决分布式系统数据丢失问题最为有效的手段。另一类副本是服务副本,指多个节点提供同样的服务,每个节点都有能力接收来自外部的请求并进行相应的处理

3、并发性

在一个计算机网络中,程序运行过程中的并发性操作是非常常见的行为,例如同一个分布式系统的多个节点,可能会并发地操作一些共享的资源,诸如数据库或分布式存储等,如何准确并高效地协调分布式并发操作也成为了分布式系统架构与设计中最大的挑战之一

4、缺乏全局时钟 

一个典型的分布式系统是由一系列空间上随意分布的多个进程组成的,具有明显的分布性,这些进程之间通过交换消息来进行相互通信。因此,在分布式系统中,很难定义两个事件究竟谁先谁后,原因就是因为分布式系统缺乏一个全局的始终控制序列

5、故障总是会发生

组成分布式系统的所有计算机,都有可能发生任何形式的故障。一个被大量工程实践过的黄金定理是:任何在设计阶段考虑到的异常情况,一定会在系统实际运行中发生,并且,在系统实际运行中还会遇到很多在设计时未考虑到的异常故障。所以,除非需求指标允许,在系统设计时不能放过任何异常情况

6、处理单点故障

在整个分布式系统中,如果某个角色或者功能只有某台单机在支撑,那么这个节点称为单点,其发生的故障称为单点故障,也就是通常说的SPoF(Single Point of Failure),避免单点而对关键就是把这个功能从单机实现变为集群实现,当然,这种变化一般会比较困难,否则就不会有单点问题了。如果不能把单点变为集群实现,那么一般还有两种选择:

(1)给这个单点做好备份,能够在出现问题时进行恢复,并且尽量做到自动恢复

(2)降低单点故障的影响范围

 

分布式系统的意义

从单机单用户到单机多用户,再到现在的网络时代,应用系统发生了很多的变化。而分布式系统依然是目前很热门的讨论话题,那么,分布式系统给我们带来了什么,或者说是为什么要有分布式系统呢?从三方面考虑:

1、升级单机处理能力的性价比越来越低

摩尔定律:当价格不变时,每隔18个月,集成电路上可容纳的晶体管数目会增加一倍,性能也将提升一倍。这个定律告诉我们,随着时间的推移,单位成本的支出所能购买的计算机能力在提升。不过,如果我们把时间固定下来 ,也就是固定在某个具体时间点来购买单颗不同型号的处理器,那么所购买的处理器性能越高,所要付出的成本就越高,性价比就越低。那么,也就是说在一个确定的时间点,通过更换硬件做垂直扩展的方式来提升性能会越来越不划算

2、单机处理能力存在瓶颈

某个固定时间点,单颗处理器有自己的性能瓶颈,也就说即使愿意花更多的钱去买计算能力也买不到了

3、出于稳定性和可用性的考虑

如果采用单击系统,那么在这台机器正常的时候一切OK,一旦出问题,那么系统就完全不能用了。当然,可以考虑做容灾备份等方案,而这些方案就会让系统演变为分布式系统了

集中式架构与分布式架构比较 应用现状比较 由于历史原因,集中式架构多用于传统银行、电信等行业。主机资源集中在大型主机或小型机上。集中式架构下,包括操作系统,中间件,数据库等“基础软件” 均为闭源商用系统。集中式架构的典型案例是 IOE(IBM, Oracle,EMC)提供的计算设备、数据库技术和存储设备共同组成的系统。 近年来,分布式架构在 Google、 Amazon、Facebook、阿里巴巴、腾讯等互联网公司广泛应... 阅读详情

相关推荐

集中式与分布式——git、gitlab、gitee

老样子,实验目录 yum install -y git 初始化版本库 .git目录是git跟踪管理版本库的,没事别瞎溜达 [root@server1 ~/demo] git init Initialized empty Git repository in /root/demo/.git/ [root@server1 ~/demo] ls .git/ branches config description HEAD hooks info objects refs [root@server1

qwejiaji的博客 1349

分布式系统和集中式系统概念的简单易懂理解

关于这个概念,应该在上学的时候,老师应该是讲过的,我有大概的印象,记得当时的印象就是:分布式系统--就是原本需要一个人干的事,现在分给n个人干,各自干各自的,最终取得和一个人干的效果一样。 那么,为啥原来一个人干的事,现在却需要n个人来干呢? 先看2个概念性术语吧。。。。。 、、、集中式系统、、、分布式系统 一个人干----------集中式系统 就像我们学Java web的,可

请叫我大师兄 1万+

集中式感知 V.S. 分布式感知

文献调研——集中式感知 V.S. 分布式感知

LeoWaiting的博客 1924

云计算——云计算关键技术

本章将会讲解云计算中所需要的关键技术。

yj11290301的博客 1万+

sgdc-cdts:集中部署的模板解决方案(CDTS)

集中部署的夹具解决方案(CDMS)的文档 SGDC:集中式部署模板解决方案,DGIIT认可奖:在改变我们的活动和运营方面的卓越表现,GTEC:杰出奖。 请访问以获取SGDC源代码。 什么是集中部署的夹具解决方案(CDMS)? SGDC的目标是为Web资产提供Canada.ca和intranet.canada.ca主题的表示层。 它分隔了静态网站或Web应用程序的数据处理表示层,并支持跨多个网络的快速更新。 SGDC将使您实现由网络安全倡议组织(TBS)提出的成熟度​​模型的目标。 您可以轻松设置: 根据Canada.ca的更新频率保持最新: 在短时间内实施所需的更新; 降低开发和维护成本; 确保Canada.ca要求得到一致实施; 到2017年12月31日,可以使用集中式模板对所有Web资产的表示层进行集中式管理。 符合网络更新计划; 符合Canada.ca的内容和信息

ArcGIS数据处理必备技能:从地理坐标到UTM投影的面转栅格完整流程

本文详细介绍了在ArcGIS中从地理坐标到UTM投影的面转栅格完整流程,包括坐标系转换、像元大小设置及质量控制等关键步骤。通过实战案例和Python脚本示例,帮助用户解决常见问题并优化数据处理效率,特别适合需要精确GIS数据分析的专业人士。

weixin_42628688的博客 180

集中式和分布式

集中式架构与分布式架构 什么是集中式 集中式架构就是将项目集中存储在中央服务器中,在工作的时候,大家只要自己电脑上操作,从同一个地方下载最新版本,然后开始工作,做完的工作再提交给中央服务器保存。这种方式需要联网,典型的例子就是SVN。 图1 集中式架构示意图 缺点: 1.如果网络出现问题或者网速慢的时候,直接影响工作效率。如果是中央服务器挂了,那就集体喝茶去了不用工作。 2.还有一种情况,各自电...

Zkuzma的博客 1万+

帆软js--获取控件和单元格

参数面板: 获取面板控件 ,name为控件名称:_g().parameterEl.getWidgetByName("name") 取值:_g().parameterEl.getWidgetByName("tt3").getValue()2323 赋值:_g().parameterEl.getWidgetByName("tt2").setValue("987") 调用对应的事件比...

江湖行骗老中医 7197

集中式架构vs分布式架构

架构类型根据具体业务需求和场景选择,没有“一刀切”的最佳架构。集中式架构适合简单、资源有限的系统。分布式架构适合高并发、大规模、需高可用的系统。

分享技术人生的学习笔记和过往心得,与志同道合者共同进步 4226

(赛事-2022)[re:Invent 2018]-002:通过分析log多次迭代优化奖励函数后- 最快7.6s / 圈

Deepracer training 流程

Rainbow 4711

【Qt】QML-01:使用QtCreator10创建QML工程,并讲解第一个程序:Hello World

QML第一讲:创建QML工程、详解QML第一个程序Hello World

郭老二 7795

集中式架构和分布式架构

数据是企业的核心资产和战略资源。面对爆炸性的数据增长,如何有效地组织、管理和利用数据成为企业的重大挑战。数据架构作为企业数据管理的蓝图和框架,发挥重要作用。本文就来详细说下当下主流的两种数据架构的类型。

oOBubbleX的博客 3250

STC32-USB-CAN:基于STC32G的国产双通道隔离CAN分析调试设备设计与实战

本文详细介绍了基于国产STC32G单片机设计双通道隔离CAN分析调试设备的全过程。该设备实现了双通道隔离CAN数据监控、中继转发及USB高速通信,并支持故障注入测试。核心采用全国产器件,通过实战测试验证了其在1Mbps波特率下长时间稳定工作的可靠性,为工程师提供了高性价比的CAN总线调试解决方案。

weixin_42465140的博客 97

集中式,分布式区别

1、集中式 将项目等部署到同一台机器上,对机器性能要求比较高,一般会用多台机器备份,解决单点故障问题,否则,如果机器出现死机等状况,整个项目将不能运行(就好比你要盖一座房子,你房子就给你一个盖,如果这个人生病或者有事,你还没有合适的人来代替这个人,你的房子就不能盖了) 2、分布式 将一个项目分成几块,分别在不同的机器上运行,对机器的性能要求降低 3、集群 分布式一定是集群,集群不一定是分布式(还可...

紅桃10 1万+

风力摆控制系统 PCB 设计 3 要点:STM32+MPU6050+空心杯电机驱动一体化

本文详细解析了风力摆控制系统PCB设计的3大核心要点,重点介绍STM32主控、MPU6050姿态传感器与空心杯电机驱动的一体化方案。通过系统架构设计、PCB布局布线技巧以及噪声抑制方案,帮助参赛者在电子设计竞赛中构建高精度、高稳定性的风力摆控制系统,提升竞赛作品性能。

weixin_30363285的博客 359

【AI大模型:认知升级】1、全面解析AI大模型:从起源到发展脉络与应用价值

AI大模型是具备超大规模参数(千亿至万亿级)、海量训练数据(TB级)和强迁移学习能力的基础模型。其技术特征包括Transformer架构革新、大数据预训练范式及参数规模超过临界值后的能力涌现。发展历程经历了语言模型突破(2018-2020)、多模态融合(2021-2023)和架构创新(2023至今)三波浪潮,遵循数据、算力、算法协同进化规律。底层驱动因素包括能力涌现机制、算力基础设施突破和应用场景拓展,正在重构产业价值链。通过"知识星系""认知

2025博客之星Top81。专注AI工程化与架构实战。从分布式思维到模型部署,用工程化视角为你厘清AI落地的真实路径。 2291

集中式vs分布式

我们知道CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢?各有什么优缺点呢? 我们用两张图直观的分析两种版本控制系统的区别

Simon_night的专栏 2814

Python爬虫实战:抓取统计数据并生成年度对比图表详解

国家统计局网站(静态HTML页面Excel文件JSON接口(部分新版API)我们将重点演示从统计公报页面抓取数据,结合解析Excel文件,实现多种数据格式爬取处理。本文从零开始搭建了一个爬取国家统计数据并制作年度对比图表的完整流程。读者可以根据实际需求调整爬取目标,丰富数据分析维度,甚至结合机器学习模型预测未来趋势。欢迎你在评论区留言分享你的爬虫实践,或提出改进建议!

2201_76125261的博客 1000

集中式 vs 分布式

深度剖析集中式与分布式网关在性能、成本、实施难度及适用场景的核心差异。为架构师提供独立、客观的技术选型参考,助您做出经得起时间检验的决策。

movingcomm的博客 574

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

集中式到分布式发展

集中式到分布式的演变 前言: 随着计算机系统规模变得越来越大,将所有业务单元集中部署在一个或者若干个大型机上的体系结构物,已经越来越不能满足当今计算机系统,尤其是大型互联网系统的快速发展,各种灵活多变的系统架构模型层出不穷。同时,随着微型计算机的出现,越来越多廉价的PC机成为了各大IT企业架构的首选,分布式的处理方式越来越受到业界的青睐。 计算机系统正在经历一场前所未有的从集中式到分布式架构的变革...

YongGanDeYingZi的博客 1214

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

gaussdb数据库的集中式和分布式

GaussDB提供集中式和分布式两种架构。集中式(如GaussDB for MySQL)采用共享架构,适合OLTP场景,强一致但扩展有限;分布式(如GaussDB DWS)采用MPP架构,适合OLAP场景,可水平扩展处理PB级数据。两者互补,企业可根据业务需求选择:交易系统用集中式,数据分析用分布式,共同构建HTAP解决方案。

clownAdam的博客 1666

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

分布式 or 集中式

分布式 or 集中式 采用信道自适应资源分配可以大大提高 D2D 通信的几乎所有性能指标。我们观察到 D2D 用户能够估计他们的本地 CSI,然而基站需要一些信令交换来获得这些信息。基于D2D用户对本地CSI的了解,我们提供了一个调度框架,展示了分布式方法如何优于集中式方法。 我们首先提出一个集中式的调度,它需要在基站上获取D2D链路CSI。这种CSI报告受到反馈传输可用资源有限的影响。 因此,我们利用用户对其本地CSI的了解,开发了一种分布式的D2D资源分配算法。在分布式方法中,不同CSI报告之间可能发生

你通透就好 别问我是谁 711
上一篇: java的四种引用,强弱软虚,用到的场景 (r)
下一篇: 从分布式一致性谈到CAP理论、BASE理论
xinjing_wangtao
博客等级 码龄14年 232粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值