性能优化的关注点


分享一下在性能方面经常考虑的一些关注点,可以分为以下方面

1 写缓冲

因为各级存储介质速度的不同,经常可以运用缓冲提高性能
经典应用例如linux中的bufferCache或者mysql中的redologbuffer

2 复用

复用可以分为以下两个方面

2.1 读缓存

多次读取的数据可以在某一端缓存下来,避免每次都做完全部的操作
经典应用例如页面缓存、redis。。。等等等等

2.2 资源复用

在某个资源创建、销毁、复制代价很高昂时,可以考虑让这个资源完成多方面或多次操作,而不是用完就丢,从这种层面上也可以达成复用的效果
例如经典的池化设计,以及zero-copy

3 并发

在流程允许的情况下,多线程并发可以明显的提高性能,即使只有单核也可以合理运用wait时间运行多线程程序提高性能
并发有时会带来资源管理的问题,一般使用锁来控制
所以还需要注意锁粒度和无锁化,也可以有效的优化程序性能
常见的优化手段 ThreadLocal,CAS (指思想)

4 分片

对应用进行集群和分片可能会导致单次操作时间变长,但是会明显提升吞吐量

5 亲和度

有分片的场景就会涉及亲和度,亲和度指某一类请求应当能够尽可能的调度到同一分片
合理运用亲和度第一可以降低并发冲突,甚至在合适的情况下实现lock-free;第二可以充分利用该分片上已有的缓存,提升性能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值