博客
关于我
可伸缩性
阅读量:445 次
发布时间:2019-03-06

本文共 546 字,大约阅读时间需要 1 分钟。

技术文档:系统可伸缩性与扩展性

常见问题

在实际应用中,硬件设备的性能限制有时会影响软件系统的优化效果。这时候,单纯依靠软件优化已经无法提升性能,系统架构需要进行改造,通过组合多个低处理能力的硬件设备,构建具有高处理能力的系统。

可伸缩性

可伸缩性是指在增加计算机资源(如CPU、内存、存储容量或I/O带宽)时,程序的吞吐量或处理能力能够相应提升。例如,当业务量较小时,软件系统可以运行在一台服务器上;当业务量扩大时,可以通过增加服务器数量或在单台服务器上部署更多实例来提升性能,无需对软件本身进行编码级修改。

架构扩展方式

纵向伸缩(Scale-up)

通过提升单台机器的配置,适合解决短期处理需求的问题。优点是维护简单,但缺点是高端设备费用昂贵,且单台机器的处理能力有限,故障影响较大。

横向伸缩(Scale-out)

通过增加机器数量来提升系统性能。理想情况下,负载扩大N倍,机器数量也应增加N倍,以保持性能不变。优点是成本低且故障影响小,但缺点是节点数量增加,架构复杂度提高,维护成本更高。

可伸缩性与可扩展性的区别

  • 可伸缩性:关注系统规模的扩展。
  • 可扩展性:关注系统对变化的适应能力。

通过合理设计系统架构,结合纵向和横向伸缩策略,可以在满足业务需求的同时,优化系统性能和维护成本。

转载地址:http://coufz.baihongyu.com/

你可能感兴趣的文章
netsh advfirewall
查看>>
Netty WebSocket客户端
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty中集成Protobuf实现Java对象数据传递
查看>>
Netty工作笔记0006---NIO的Buffer说明
查看>>
Netty工作笔记0011---Channel应用案例2
查看>>
Netty工作笔记0013---Channel应用案例4Copy图片
查看>>
Netty工作笔记0014---Buffer类型化和只读
查看>>
Netty工作笔记0020---Selectionkey在NIO体系
查看>>
Vue踩坑笔记 - 关于vue静态资源引入的问题
查看>>
Netty工作笔记0025---SocketChannel API
查看>>
Netty工作笔记0027---NIO 网络编程应用--群聊系统2--服务器编写2
查看>>
Netty工作笔记0050---Netty核心模块1
查看>>
Netty工作笔记0060---Tcp长连接和短连接_Http长连接和短连接_UDP长连接和短连接
查看>>
Netty工作笔记0077---handler链调用机制实例4
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty核心模块组件
查看>>
Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
查看>>