■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 最新50

プログラマが2chを救う!?2

386 :デフォルトの名無しさん :01/08/27 21:37 ID:plW.7Hb6
夕方頃に話していたことを、まとめてみました。

次世代?2ch .datとread.cgi、その他関連ファイルの仕様案

【要点】
・bbs.cgiがインデックスファイルを作成すること
・削除処理は、レス内容塗りつぶしで行い、datのサイズを変えないこと
・削除処理の履歴?をdatファイルに記録すること
・datそのものの差分を取得するcgiを作成すること

◎インデックスファイル
インデックスファイルは、bbs.cgiが各レス書き込み時に、書き込み後の
datファイルのサイズを記録し、レス番号と関連付ける。
たとえばレス番号nのレスを読み出したい場合は、datファイルより、
idx[n-1] 〜 idx[n] - 1 の範囲を読み出す。
ファイルフォーマットは未定。32bitバイナリのベタファイルで十分だと思う。

◎削除処理
削除スクリプトは、該当レスの内容を特定の文字(とりあえず'#')で
塗りつぶすことで、削除処理を行う。datファイルのサイズを変更しない。
(インデックスファイルの整合性を保つため)
また、datファイル内のレスの最初のセパレータ"<>"を"<-"に変更する。
("<-"はとりあえず)
また、datに通常のレスの形式で、削除履歴を記録する。ただし、最初の
セパレータは"<*" とする。(これもとりあえず)

例:3件書き込まれた後、2が削除、さらに1件書き込み。
----------------------------------------------------------------------
名無しさん<>sage <>01/06/13 21:26<>暴露しろや、ゴルァ <>
##########<-#####<>998845501#####<>########### <>
名無しさん<>sage <>01/06/13 21:36<>↑削除依頼出しときました。 <>
2<*<998845501><><>
名無しさん<>sage <>01/06/13 21:46<>お、早速あぼーんされてる <>
-----------------------------------------------------------------------

◎dat差分取得スクリプトの作成
専用UAやミラーサーバがdatファイルを取得する際に使用する。
ただし、取得する際にはdatファイル内に記録された削除履歴を含めて取得する
こと。たとえば上記のdatファイルの場合、st=3&to=4 を取得する場合、実際に
取得されるのは、3行目から5行目、「↑削除依頼」から「お、早速」まで。
また、上記のdatファイルからレス番号4のみを取得する場合は、4行目と5行
目を取得する。(削除履歴を間違いなく取得させること)
専用UAは、取得した差分datから、削除履歴をみて、既に取得しているログの
削除処理を行うこと。

◎その他
削除したレス及び削除履歴には削除日時をtime_tで記録する。(用途は今のとこ
ろ思いつかないけどとりあえず。)

272KB
新着レスの表示

スレッドリストへ戻る 全部 前100 次100 最新50

0ch BBS 2004-10-30