P2Pでサーバに依存しない掲示板を作るの巻at TECHP2Pでサーバに依存しない掲示板を作るの巻 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト42:41 01/08/29 20:11 mHkvtMJw う・・・「改行がおおすぎます」が出ちまった。 続き。 ■ 書き込み 書き込みしたいクライアントは、書き込んだぞーメッセージを 他のクライアントに送信。もちろん、匿名性確保の為に、他の クライアントから伝わってきたんだけど…という顔をして。 書き込みメッセージはネットワークのすべてのクライアントを 駆け巡る(無駄っぽい)。 <書き込みメッセージを受け取ったクライアントの動作> 1: まず、書き込み日付が、異常に昔だったり、未来だったり していないかをチェック。もし、チェックに引っ掛かれば、 そのメッセージを他のクライアントに渡したりはしない。 これは、レスをあとから挿入しようと目論んでいる悪質な クライアントを排除するためである。また、これにより、 クライアントは常に正確な時間を保持することが義務付けられる。 2: 自前でスレのage、sageを行ってスレ一覧を作る。 参加したばかりで、ろくにスレ一覧の出来ていない 他のクライアントから分けてもらいましょう。 3: ストックに保存 …でも全部のクライアントが保存したら多すぎるよなぁ。 ■ レス保存 完全消滅する前に適当にばら撒きましょう。 ライフタイム計算して、適当に消すのも良し。 ■ ついでにレス削除 クライアントは、気に食わないレスの(自分を通じての)流通を 拒否することが出来る。つまり、1-xxxは持ってるけど、Id:zzz のレスはやらん!というように。要求元のクライアントAでは、 「削除された」という形で扱われる。が、 別に欲しければ、「ID:fugahugaのレスある?」と 他のクライアントに聞くことは出来る。が、 別に気にしなければ、クライアントAへは結局コピーされなく、 またクライアントAからそのスレを取得した他のクライアントへも コピーされなくなるので、完全消滅の日は早まる(気がする)。 ■ 補足 スレIDは「板名+ユニークそうな文字列」、 レスIDは「スレID+ユニークそうな文字列」とする。 板を立てること自体はレスIDの板名を変えるだけなんで誰でも出来る。 メジャーな板の一覧はプログラムに埋め込み。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch