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

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

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

常见问题

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

可伸缩性

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

架构扩展方式

纵向伸缩(Scale-up)

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

横向伸缩(Scale-out)

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

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

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

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

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

你可能感兴趣的文章
PHP投票小程序
查看>>
php拆分数组不改变key值
查看>>
php接口返回数据 用echo 还是return?
查看>>
php接口返回状态,大家一般怎么规范接口返回内容
查看>>
php接收formdata上传的多个文件,使用formData()上传多个文件
查看>>
PHP操作csv文件导入+导出
查看>>
php操作mysql用select_php如何操作mysql获取select 结果
查看>>
PHP操作符与控制结构
查看>>
PHP支付宝SDK使用,电脑网页支付
查看>>
php支付宝手机网页支付类实例
查看>>
PHP改变数组key值的方法
查看>>
php教程之php空白页的原因及解决方法
查看>>
PHP数据库操作
查看>>
PHP数据文件过大,导致PHP加速器eaccelerator在PHP5.2版本下崩溃
查看>>
RabbitMQ - 死信、TTL原理、延迟队列安装和配置
查看>>
PHP数据访问的多重查询(租房子查询)
查看>>
RabbitMQ - 如保证消息的可靠性?(消息确认、消息持久化、失败重试机制)
查看>>
RabbitMQ - 基于 SpringAMQP 带你实现五种消息队列模型
查看>>
php数组函数分析--array_column
查看>>
php数组去重复数据的小例子
查看>>