- 主题:请教如何存放帖子
快速读文件不一定要打开的
【 在 csplayer (日有所进) 的大作中提到: 】
: 那,如果阅读一次帖子,就要打开文件一次?
: 如果1秒钟有100个读帖子请求,岂不是要i/o 100次?
: 文件打开后不是立即关闭,而是有一个缓冲区来维护打开的文件?
: ...................
--
FROM 219.154.45.*
mmap啊
【 在 foxban (呕液) 的大作中提到: 】
: 哦?不打开怎么读?
--
FROM 219.154.45.*
把文件映射到内存中的一段地址
然后读写这块内存就等同于读写这个文件了
因为地址映射比打开文件少一次(从内核到用户空间的)内存复制,所以性能好一些
【 在 foxban (呕液) 的大作中提到: 】
: 不懂,帮我补补吧...
--
FROM 219.154.45.*
可以不映射整个文件
而且读内存的时候才读磁盘
不读内存的时候仅仅保留一个映射关系而已
【 在 foxban (呕液) 的大作中提到: 】
: 那么多文件得占多少内存啊...
--
FROM 219.154.45.*
那就不知道了
我没有读过fb的代码
【 在 foxban (呕液) 的大作中提到: 】
: o~~好像明白点了,这个是kbs的机制,还是从有fb开始就有了啊
--
FROM 219.154.45.*