什么是横向扩展和纵向扩展?

ElasticSearch:横向扩容以及容错机制 一、ElasticSearch横向扩容 primary shard 和 replica自动负载均衡 1.1 假设,我们的ElasticSearch集群中存在:2个node(节点),3个primary shard(主分片) ,3个replica shard(副本分片)。 2个节点各有3个分片 ,每个主分片各有1个副本分片。如下图: 1.2 如果此时给ElasticSearch集群增加一个node(节点),ElasticSearch会自动对primary shard 和 replica shard 阅读详情

ab0ad36999507935ea8f6a884ce81966.gif

现代应用程序不断变化,随着新要求的发展而发展,并且存在于对资源的不同需求的环境中。扩展应用程序可以根据资源需求适当调整其大小,以确保客户满意并降低基础设施成本。

如果您不知道如何有效地扩展,您不仅会损害您的应用程序,还会给您的运营团队带来不必要的压力。手动尝试确定何时扩大或扩大规模非常困难。如果您购买更多基础设施来适应高峰流量,那么当负载不是高峰时,您可能会超支。如果您以平均负载为目标,流量高峰将影响您的应用程序性能,并且当流量下降时,这些资源将被闲置。

什么是纵向扩展与横向扩展

横向扩展(「Scale-out」)或水平缩放与纵向扩展(「Scale-up」)或垂直缩放形成对比。

扩展云资源的想法可能很直观。随着您的云工作负载发生变化,可能需要增加基础架构以支持增加的负载,或者在需求低时减少基础架构可能是有意义的。“向上或向外”部分可能不太直观。横向扩展是并行添加更多等效功能组件以分散负载。这将从两个负载平衡的 Web 服务器实例变为三个实例。相比之下,扩大规模是使组件更大或更快以处理更大的负载。这会将您的应用程序移动到具有 2 个 CPU 的虚拟服务器 (VM) 到具有 3 个 CPU 的虚拟服务器。缩减则相反。

两个比喻

火车动力

传统火车和动车。传统的存储Scale-up架构的存储就好像传统的火车一样,当后面的磁盘越挂越多的时候,控制器性能以及背板带宽却不能相应提升,因此传统存储在磁盘容量扩容到一定程度时候,往往性能下降。

集群存储就好像新一代的动车组火车一样,当火车车厢增加的时候,前面的火车头动力也随之增加,因此不会发生性能瓶颈。

所谓动车组的设计理念和传统火车设计理念的最大区别在于传统火车主要动力来自于火车头(就像传统模块化阵列的两个控制器),而动车组则不一样,除了车头配有动力装置外,每一节车厢都配有动力推动装置。集群存储大多都是由一个个节点(X86 服务器)组成,每一个节点添加进去后,不仅能够添加容量,还能够添加整个存储器的整体处理能力。

鱼缸启示

其实我认为Scale-out和Scale-up的概念可以用一个简单的例子来解释。

不知您有没有养过鱼? 当你只有六七条鱼的时候,一个小型鱼缸就够了;可是过一段时间新生了三十多条小鱼,这个小缸显然不够大了。

如果用Scale-up解决方案,那么你就需要去买一个大缸,把所有沙啊、水草啊、布景啊、加热棒、温度计都从小缸里拿出来,重新布置到大缸。这个工程可不简单哦,不是十分钟八分钟能搞得定的,尤其水草,纠在一起很难分开(不过这跟迁移数据的工程复杂度比起来实在是毛毛雨啦,不值一提)。

那么现在换个思路,用Scale-out方案,就相当于是你在这个小缸旁边接了一个同样的小缸,两个缸联通。鱼可以自动分散到两个缸,你也就省掉了上面提到的那一系列挪沙、水草、布景等的折腾了。

回到存储架构。用户在采购之初很难准确预测未来数据增长的速度和总量。用户往往不得不采购比自己目前实际需求容量更大的存储,这就导致两个问题,一是预算的浪费,很多存储空间都是为未来数据增长采购的,花了10TB的钱,但是可能只利用上了5TB,另5TB的资金都白白放在那里。另一个问题是,随着时间推移,数据增长,数据量超过了10TB。

按照过去Scale-up的理念,解决方案就是购买更大容量的存储,那么难免面临数据迁移的问题,用户必须停机迁移数据,意味着服务的中断。而Scale-out架构解决了这个矛盾。用户按需采购存储,一旦容量不够了,再购置一台接到原有存储上就可以了。

举个例子

常见的存储设备扩展案例,下图展示了scale-out存储方案的架构。在图中,系统只能通过增加具有完整功能的节点进行扩展,但一个scale-out系统可以有很多节点,而且节点之间的内部物理互联距离也可以很远。

3a18aaf6ede4a0d173b55221ab668abe.png

Scale-up,即纵向扩展架构。从下面的拓扑图我们可见,纵向扩展是利用现有的存储系统,通过不断增加存储容量来满足数据增长的需求。

ef001aead3823fad375d359376c76132.png

Scale-up和scale-out并非不能融合在一起,很多存储系统就可以同时实现纵向扩展和横向扩展,下面的示意图就展示了这种方案。

8af94bfe82ee4c584a984e4221f523dc.png

究竟选择scale-up还是scale-out架构,主要考虑以下因素:

成本Scale-up架构只有容量升级的成本,不会增加控制器或基础设施的开销。如果我们主要衡量每GB存储的单位价格,scale-up的扩展方式无疑更便宜一些
容量两种解决方案都可以满足容量需求,但scale-up架构也许会有些限制,主要取决于单个系统最大支持多少个磁盘数量和多大的容量
性能Scale-out架构在性能上具有扩展潜力,在多个存储控制器下,IOPS处理能力和吞吐带宽都可以聚合。虽然节点之间的通信会引发延迟,但那是部署时的细节问题
管理Scale-up架构本身就是以单一系统的方式来进行管理的。而Scale-out架构通常有聚合管理的能力,但每个厂商提供的产品可能会有所不同
复杂性Scale-up架构的存储相对简单,而scale-out架构的系统会更复杂一些,毕竟每个节点都需要管理
可用性多个节点可以提供更好的可用性,假使有一个部件故障或失效,系统也不至于整体宕机。这一点与具体的实施方案也有关系

在选择scale-up还是scale-out的时候,我们要考虑大量的因素。而结果往往取决于哪个厂商有比其他人更好的整体方案、实施能力和技术优势。但我们最好从了解最基本的信息起步,了解这两种技术及其之间的差别。

横向扩展与纵向扩展的区别 横向扩展与纵向扩展的区别 1. 背景介绍 1.1 问题的由来 随着互联网的快速发展,各种类型的应用系统如雨后春笋般涌现,这些系统对性能、可用性、可扩展性等方面提出了越来越高的要求。为了应对这些挑战,系统架构师和开发者们不断探索和实践各种技术方案,其中横 阅读详情

相关推荐

横向扩展与纵向扩展的实际应用

横向扩展,纵向扩展,云计算,分布式系统,高可用性,性能优化,架构设计 1. 背景介绍 随着互联网和移动互联网的蓬勃发展,应用程序的规模和用户数量呈指数级增长。传统的单机架构已经难以满足现代应用对高性能、高可用性和可扩展性的需求。为了应对这些挑战,横向扩展和纵向扩展成为了两种重要的系

AI大模型应用之禅 1046

什么是横向扩展、纵向扩展?

什么是横向扩展、纵向扩展? 横向扩展英文简称:Scale Out,全称:Scale horizontally,横向扩展,向外扩展。 纵向扩展英文简称:Scale Up,全称:Scale vertically,纵向扩展,向上扩展。 不管横向扩展还是纵向扩展都是一种架构的概念。 横向扩展:比如可以增加一台节点/机器 比如:mysql新增加一个从库、tomcat新增加一台机器; 纵向扩展:比如可以通过修改mysql参数内存比例、修改tomcat的线程数; 注:如果纵向扩展升级硬件比如CPU升级成6..

逍遥壮士 9874

在Ansys Mechanical中对磨损进行建模

在有限元分析中,磨损是通过移动接触表面上的节点来复制材料侵蚀来建模的。仿真迭代更新几何,并在每次更新后重新计算平衡,使过程成为非线性的。Ansys使用将压力、相对运动和材料阻力与表面损失联系起来的经验定律来处理连续介质尺度的磨损。要在Ansys Mechanical中激活磨损建模,必须使用TB,WEAR命令定义专用材料模型。该命令与 TBDATA 相结合,允许用户输入与磨损相关的材料常数,以控制磨损的计算方式以及在接触表面上的应用方式。

jkh920184196的博客 2627

横向扩展与纵向扩展区别详解

你有一台API服务器,每天几百万次请求,吃不消了。现在要提升性能: 1 横向扩展:多增加几台API服务器,一起服务。 纵向扩展:把API服务器换成性能更好的机器。 横向扩展 也叫 水平扩展,用更多的节点支撑更大量的请求。 如成千上万的蚂蚁完成一项搬运工作 纵向扩展 又叫 垂直扩展,扩展一个点的能力支撑更大的请求。如利用1个人的能力,如蜘蛛侠逼停火车 2 纵向扩展:在数量不变的前提下提高单硬件的性能 横向扩展:通过增加数量来提高集群的性能 在硬件的性能比较低的时候,纵向比横向更便宜2T<2* 1T 在硬

qq_41536934的博客 8147

f_fs.c 初始化流程(进行中)

前言 之所以选择f_fs.c作为这系列的开始,因为usb在/driver/usb下面的内容实在太多太多,如果讲各种各样点会太分散了。所以决定切入点以实际使用为主,就是f_fs了,目前我了解这是做bulk裸传输使用的,具体的通信协议自己确定。 初始化部分 开始点从这个路径下说起, /drivers/usb/gadget/function/f_fs.c 然后f_fs.c第一个使用的是include/composite.h中的宏定义function #define DECLARE_USB_FUNCTION(_n

weixin_36406973的博客 1966

threejs开发可视化数字城市效果

theme: condensed-night-purple 灵感图 现在随着城市的发展,越来越多的智慧摄像头,都被互联网公司布到城市的各个角落,举一个例子,一个大楼上上下下都被布置了智能摄像头,用于监控火势,人员进出,工装工牌佩戴等监控,这时候为了美化项目,大公司都会将城市的区域作为对象,进行3d可视化交互,接下来的内容,就是基于以上元素,开发的一款城市数据可视化的demo,包含楼宇特...

weixin_41770018的博客 1579

横向扩展和纵向扩展是什么?有什么区别?

用户往往不得不采购比自己目前实际需求容量更大的存储,这就导致两个问题,一是预算的浪费,很多存储空间都是为未来数据增长采购的,花了10TB的钱,但是可能只利用上了5TB,另5TB的资金都白白放在那里。按照过去Scale-up的理念,解决方案就是购买更大容量的存储,那么难免面临数据迁移的问题,用户必须停机迁移数据,意味着服务的中断。传统的存储Scale-up架构的存储就好像传统的火车一样,当后面的磁盘越挂越多的时候,控制器性能以及背板带宽却不能相应提升,因此传统存储在磁盘容量扩容到一定程度时候,往往性能下降。

HoewDec的博客 2810

湿敏电阻HR202的两种驱动方案实测:IO充放电法 vs. 交流方波ADC法,哪个更适合你?

本文深入评测湿敏电阻HR202的两种驱动方案:IO充放电法和交流方波ADC法。通过原理图分析、精度实测和资源占用对比,揭示交流方波ADC法在精度和稳定性上的优势,特别适合长期监测场景。同时提供IO充放电法在资源受限情况下的应用建议,帮助工程师根据项目需求做出最优选择。

weixin_30421809的博客 466

mysql横向扩展_转mysql横向扩展和纵向扩展

Scale - up (纵向扩展)和 Scale -out (横向扩展)的解释 谈到系统的可伸缩性, Scale - up (纵向扩展)和 Scale -out (横向扩展)是两个常见的术语,对于初学者来说,很容易搞迷糊这两个概念,这里总结了一些把概念解释的比较清楚的内容。 首先来段WikiScale-up(纵向扩展)和Scale-out(横向扩展)的解释谈到系统的可伸缩性,Scale-up(纵向...

weixin_36219012的博客 327

Stata新手避坑:用reghdfe搞定行业、地区多重固定效应,告别‘共线性’报错

本文详细介绍了如何使用Stata中的reghdfe命令高效处理多重固定效应问题,解决传统方法在面板回归中遇到的共线性报错和低R²问题。通过实战案例和高级技巧,帮助新手快速掌握行业、地区等多维固定效应的控制方法,提升经济学和金融学研究的分析效率。

weixin_30635053的博客 419

墨水屏高效开发:架构、开源库与实战优化指南

嵌入式显示技术中,电子墨水屏以其类纸观感和超低功耗特性,在电子书阅读器、智能办公本及工业仪表等场景中占据独特地位。其工作原理基于微胶囊电泳技术,仅在画面刷新时消耗电能,静态显示时功耗近乎为零,这带来了极致的续航优势。为实现流畅的交互体验,开发者需构建分层渲染架构,通过硬件抽象层统一驱动接口,并引入帧缓冲与差异比较算法智能决策局部刷新区域,从而大幅降低刷新延迟与功耗。开源库如GxEPD2和LVGL为墨水屏适配提供了关键支持,结合波形文件管理与电源优化策略,能有效解决残影与卡顿问题。本文聚焦于eink墨水屏高效

weixin_42545636的博客 410

mysql的纵向扩展方案_转mysql横向扩展和纵向扩展

Scale - up (纵向扩展)和 Scale -out (横向扩展)的解释 谈到系统的可伸缩性, Scale - up (纵向扩展)和 Scale -out (横向扩展)是两个常见的术语,对于初学者来说,很容易搞迷糊这两个概念,这里总结了一些把概念解释的比较清楚的内容。 首先来段WikiScale-up(纵向扩展)和Scale-out(横向扩展)的解释谈到系统的可伸缩性,Scale-up(纵向...

weixin_39900608的博客 208

【技术拆解】Illumina边合成边测序(SBS)核心流程全解析 | 从文库构建到数据分析

本文深入解析了Illumina边合成边测序(SBS)技术的完整流程。从DNA样本的文库构建(片段化、加接头、扩增),到Flowcell上的簇生成(桥式PCR),再到核心的边合成边测序(SBS)循环(荧光标记、可逆终止),最后简述了从原始数据到生物学洞见的数据分析步骤,为理解这一主流高通量测序技术提供了清晰的框架。

weixin_29201859的博客 535

横向扩展和纵向扩展

横向扩展和纵向扩展

m0_72816932的博客 1314

ABAP Cloud:面向云时代的 ABAP 开发范式与实践指南

摘要: 本文系统讲解SAP ABAP Cloud开发模型,涵盖其架构、工具链、规范及实践。ABAP Cloud作为统一开发模型,支持在SAP BTP和S/4HANA上构建云就绪应用,遵循clean core原则,通过RAP(RESTful应用编程模型)实现低耦合扩展。文章详细解析其核心构成(RAP、稳定API、clean core约束)、工具链(ADT、软件物流)及两种典型扩展场景(on-stack与side-by-side),并附可运行RAP示例代码(如销售笔记应用)。重点强调通过规范开发确保系统可升级性

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 388

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

转mysql横向扩展和纵向扩展

Scale-up(纵向扩展)和Scale-out(横向扩展)的解释   谈到系统的可伸缩性,Scale-up(纵向扩展)和Scale-out(横向扩展)是两个常见的术语,对于初学者来说,很容易搞迷糊这两个概念,这里总结了一些把概念解释的比较清楚的内容。   首先来段Wikipedia的,讲的很透彻了。 Scale vertically (scale up)    To sc

wisgood的专栏 5141

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

mysql中横竖转换_转mysql横向扩展和纵向扩展

Scale-up(纵向扩展)和Scale-out(横向扩展)的解释谈到系统的可伸缩性,Scale-up(纵向扩展)和Scale-out(横向扩展)是两个常见的术语,对于初学者来说,很容易搞迷糊这两个概念,这里总结了一些把概念解释的比较清楚的内容。首先来段Wikipedia的,讲的很透彻了。Scale vertically (scale up)To scale vertically (or scal...

weixin_39815345的博客 147

假人有限元模型

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

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

什么是Scale Up(纵向扩展)和Scale Out(横向扩展)?

1 Scale Out 即Scale horizontally,横向扩展,向外扩展 。 称为集群系统。指由多个节点组成的SAP HANA系统,这种系统的扩展主要以水平扩展方式(指增加节点的方式)来进行。 比如:我们向原有的web、邮件系统添加一个新机器。 2 Scale Up 即Scale vertically)纵向扩展,向上扩展。 称为单节点系统,指系统中只包括一个有效节点(如果需要HA时,可以将两个单节点以System Replication形式构成单节点的HA架构)。这种架构的系统只具有垂直扩展能力,

JavaEdge全是干货的技术号 1万+

mysql横向扩展和纵向扩展_MariaDB Spider:实现MySQL横纵向扩展的小能手

什么是Spider?当您的数据库不断增长时,您绝对需要考虑其他技术,如数据库分片。Spider是MariaDB内置的一个可插拔用于MariaDB/MySQL数据库分片的存储引擎,充当应用服务器和远程后端DB之间的代理(中间件),它可以轻松实现MySQL的横向和纵向扩展,突破单台MySQL的限制,支持范围分区、列表分区、哈希分区,支持XA分布式事务,支持跨库join。通过Spider,您可以跨多个数...

weixin_29416037的博客 631

在 Windows Azure 网站中进行纵向扩展和横向扩展

编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Byron Tardif 撰写。 当您开始一个新的 Web 项目,或者刚刚开始开发一般的网站和应用程序时,您可能希望从小处着手。但是,您可能不会停滞不前。在概念证明阶段,您可能不希望在新的 Web 场上耗费资源,但随着事业不断发展,您无法使用一小台服务器来实施大型市场营销活动。在 Windows Azure 网站的云中进行开

微软云计算:Microsoft Azure 中文博客(优快云镜像博客) 1660

mysql横向扩展性_转mysql横向扩展和纵向扩展

Scale-up(纵向扩展)和Scale-out(横向扩展)的解释谈到系统的可伸缩性,Scale-up(纵向扩展)和Scale-out(横向扩展)是两个常见的术语,对于初学者来说,很容易搞迷糊这两个概念,这里总结了一些把概念解释的比较清楚的内容。首先来段Wikipedia的,讲的很透彻了。Scale vertically (scale up)To scale vertically (or scal...

weixin_34626306的博客 284

GB28181系统设计(四)-横向扩展和纵向扩展

横向扩展 横向扩展是增加更多的服务器来实现的,那么如何自动发现服务器呢?需要中心节点吗?当然这和设计有关,和具体应用有关 提高计算能力,显然需要把任务分解到不同的服务器上,并行完成,客户端有可能连上任意一个服务器,在GB28181系统里面,我们一般只使用一个网关,多个网守。一个网关就是中心节点,注意这只是设计而已,大千世界,无奇不有,所有名词都是我们自己设计和定义的,不用被这些东西束缚。 1 mdns协议 2 中心点 纵向扩展 纵向扩展是增加cpu和内存,以及计算能力 2.1 云计算动态扩容 2.2 限制有

qianbo042311的博客 3964
上一篇: 如何把kafka Log4j1.x升级到Log4j2.x ?
后场技术
博客等级 码龄11年 156粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值