io操作

1 缓冲

https://juejin.cn/post/7130062768413081637

https://juejin.cn/post/7085935695432269861

多级缓存

1.用户空间缓冲区

咋用

只有buffer满了才会读写

作用

1.减少io次数

不到buffer的大小,不会io

2.减少内存峰值

一次buffer的大小

2.内核缓冲区

3.磁盘缓冲区

2 落盘

open 打开文件句柄

write 写磁盘buffer

sync 写到磁盘

close 关闭文件句柄

3 三方库

https://cloud.tencent.com/developer/article/1656755

4 优化技术

零拷贝

https://zhuanlan.zhihu.com/p/357820303

c++内存

1.内存分区

https://developer.aliyun.com/article/343804

2.内存泄露

1 概念

内存泄露:就是内存持续上涨的现象

内存溢出:内存不够用了

2 定位

原因

1.内存碎片

2.手动申请的内存没有释放

定位

1 tcmalloc

2 jemalloc

把jemalloc 编到包里

生成map 转成svg

对比变化

3 asan

4 valgrind

3.内存优化

分类

内存峰值

常驻内存

分析工具

valgrind 分析内存

pahole 分析内存

优化手段

https://blog.csdn.net/zju_fish1996/article/details/108858577

https://blog.csdn.net/weixin_41055260/article/details/118586493

性能优化

1 性能指标

qps p95

2 性能压测

qps p95 为例

分为客户端 服务端 端到端

3 性能瓶颈

https://blog.csdn.net/xiaonuo911teamo/article/details/133521457

https://zhuanlan.zhihu.com/p/486301255

https://zhuanlan.zhihu.com/p/335091866

io

cpu

怎么看

火焰图

https://zhuanlan.zhihu.com/p/402188023

用perf工具

1.采样

perf.data

2.可视化

.data-> .unfold -> .folded -> .svg

网络

4 常见优化技术

https://www.cnblogs.com/xuanyuan/p/13524351.html

问题


:D 一言句子获取中...