选择I/O尺寸

缓存

提高文件系统的读性能和内存的分配性能

缓存选择的要点为大小和缓存规则(完整性和一致性和成本综合)

缓冲区

提高写效率

缓冲区的操作是异步的,提供像MQ一样的作用(不如反过来说MQ像缓冲区)

轮询

系统等待某一事件发生的技术

poll和epoll的使用

并发

锁的性能问题

锁本身创建和销毁会耗费资源,解锁和上锁会消耗资源,但锁的精细度太粗糙的话会浪费cpu资源

锁哈希表

创建固定数目的锁,通过哈希表来选择哪个锁用于哪个数据结构

Untitled

如图,为了最大程度的并行,哈希表的桶的数量应该大于或等于cpu的数目

处理器绑定

NUMA环境下,最好让一Thread在一个cpu上绑定,但绑定也有可能发生冲突,要防止绑定冲突的发生