- 主题:bbs是用什么数据结构记录文章的已读状态的?
rt
--
FROM 219.236.123.*
from kbsIntro.txt
2.6.1 .boardrc.gz 已读记录
用户 home 目录下面的 .boardrc.gz 存储用户的已读记录,它是一个使用 gzip 压缩的文件,解压后的长度是
BRC_FILESIZE = MAXBOARD * BRC_MAXNUM * sizeof(unsigned int)。
BRC_MAXNUM 默认是 50,这个文件分为 MAXBOARD 段,第 i 段就是 bid = i 的那个版面的已读记录;每个版面的已读记录就是 BRC_MAXNUM 个非负整数:
n1 n2 n3 ... np 0 ... 0
其中 n1 > n2 > n3 > ... > np > 0。这组已读记录的意义是,该版面 id > n1 的文章都是未读的,id < np 的文章都是已读的;而 np <= id <= n1 的文章中,只有
id = n1,n2,n3,...,np
的文章才是已读的,其余全部未读。已读记录用这个方法来存储是有利有弊的,最大的好处就是比较有效的记录了用户最需要的那部分已读记录,
【 在 ifas (连个手机号都不值) 的大作中提到: 】
: rt
--
FROM 211.151.248.*
谢谢!
【 在 yanhuaming (补课族<好似放牛的 iBT-ing>) 的大作中提到: 】
: from kbsIntro.txt
: 2.6.1 .boardrc.gz 已读记录
: 用户 home 目录下面的 .boardrc.gz 存储用户的已读记录,它是一个使用 gzip 压缩的文件,解压后的长度是
: ...................
--
FROM 219.236.123.*
嗯
看来水木的硬盘很紧张
【 在 yanhuaming (补课族<好似放牛的 iBT-ing>) 的大作中提到: 】
: from kbsIntro.txt
: 2.6.1 .boardrc.gz 已读记录
: 用户 home 目录下面的 .boardrc.gz 存储用户的已读记录,它是一个使用 gzip 压缩的文件,解压后的长度是
: ...................
--
FROM 211.99.222.*
要是用户有20w, MAXBOARD有2k, 估计大小就很可观了?
【 在 JulyClyde (贷款太麻烦。汽车下次再买吧) 的大作中提到: 】
: 嗯
: 看来水木的硬盘很紧张
--
FROM 211.151.248.*
那CPU资源就不是资源了?
【 在 yanhuaming (补课族<好似放牛的 iBT-ing>) 的大作中提到: 】
: 要是用户有20w, MAXBOARD有2k, 估计大小就很可观了?
--
FROM 211.99.222.*
...相比之下还是硬盘更好解决点
【 在 JulyClyde (贷款太麻烦。汽车下次再买吧) 的大作中提到: 】
: 那CPU资源就不是资源了?
--
FROM 211.151.248.*
有问题,看起来小于np的是未读
【 在 yanhuaming (补课族<好似放牛的 iBT-ing>) 的大作中提到: 】
: from kbsIntro.txt
: 2.6.1 .boardrc.gz 已读记录
: 用户 home 目录下面的 .boardrc.gz 存储用户的已读记录,它是一个使用 gzip 压缩的文件,解压后的长度是
: ...................
--
FROM 219.236.123.*