性能优化的本质

1. 资源与时间的兑换

  • cache 空间资源与时间的兑换
    – 提前计算,cache结果
    – cache到内存中, 更快的内存空间换取时间
    – 数据库设计中的反规范化设计, 通过增加冗余字段,减少子查询 – 空间换取时间
    – 网页中的静态化cache, 动态网页生成结果cache – 空间换取时间
  • 集群,读写分离,主从库等. 计算资源与时间的兑换
    – 3台机器的工作,分配给5台机器做.
    – 数据库的读写分离, 主从设计

2. 尽可能合理的利用硬件特性

  • 内存cache
  • 存储中的磁盘RAID
  • HD硬盘与SSD硬盘的选择
  • 图像计算中尽可能的适应显卡特性
  • 针对特定场景的硬件设计来加速计算或者执行, 如: GPU, AI智能芯片, DSP等

3. 流程中各个环节的均衡,并行和顺序的调整

  • 寻找性能瓶颈并且将计算前移或者后移
  • 系统在线更新时引起的更新风暴, 分批,分区,分时更新.
  • 集中的事情分散开来做. 如: 秒杀中的排队(缓存, 分散, 水平扩展) – 并发
  • 硬件便宜, 好的优化人员难找. 添加更多的硬件来提高系统的吞吐能力. – 均衡
  • DNS仅网址和IP的查找, 应用链中工作量小, 可以考虑把动态服务分派, 负载均衡的工作放到dns中.

4. 减少不必要的浪费

  • 多给, 需要2个字段给了5个字段
    – 网络中传送不必要的数据.
    比如: 开发人员为了省事, 把这个表的数据集传送给了前端, 而实际上前端只是需要id和name两个字段.
  • 多做,
    – 不必要的循环比较
    – 可精简的计算
    比如: 动态网页中相对稳定的页面信息. 不用每次动态生成. 可以根据数据更新频率, 1小时? 4小时? 动态生成一次, 保存为静态网页. 减少了计算频率, 减少了不必要的计算资源浪费; 同时, 空间换取时间.

5. 算法–面对各种应用场景经过优化而沉淀下来的应用模式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值