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

2chのような掲示板システムってP2Pで

687 :266 :01/08/27 21:55 ID:TRv86eRI
なんかP2Pを軸にして結構大がかりな話になってきてるね(藁

688 :375 ◆MsUYMX0E :01/08/27 21:59 ID:84lc9ln2
>687

あ、おつかれさまです。
プレゼンまとめてみたんですけどあんなもんでいいですか?

689 :266 :01/08/27 22:03 ID:TRv86eRI
>>688
分かりやすくまとまってていいと思います。
ご協力感謝です:)

690 :デフォルトの名無しさん :01/08/27 22:04 ID:Oeqm.zBM
大掛かりな構想は実現が難しい

691 :デフォルトの名無しさん :01/08/27 22:04 ID:EqDzKa/o
>>687
君のプロトからもっと広がるよー。たぶん(W。
たとえば、キャッシュヒットあげるのに、ls=100で来たら、
cache側で持つ最新ResID送ってレス差分取得とか、
個人でみるスレは大体決まってるし、あるスレ限定で
cache持ってあとは自分でもたないことにして他人のもらうだけ
自分にはほとんど反映せずとか、Diskサイズ使用量を決められる
ようにするとか、FreeBSD/Linuxでも動くようにするとか、
いろいろ。
移植でいえば、STLが気になるが、あとはWinからWSA系関数を
BSD socketに修整すれば大体そのままで動くと思うし。

692 :266 :01/08/27 22:09 ID:TRv86eRI
>>691
STLは確かに俺もちょっと気になってます。
が、VCLを使うよりは遙かに持ち運びしやすいでしょうから(藁
STL以外の環境依存部分は切り離してます。
ソケットとミューテックス以外は環境依存しない形でいけるはずです。
ちなみにプロトコルは一応拡張可能なようにしてます。
ピア間ブロードキャストとピア間1対1通信が行えるってのがコアです。
その上に個別にメッセージを定義してやりとりするようにしてあります。
さて実装実装^^;

693 :デフォルトの名無しさん :01/08/27 22:11 ID:./Dj87Wg
私は難しいことはよくわからないのだが
とりあえず過去ログだけP2Pに移行すれば
2chの回線負荷を少しでも減らせるのでは?

694 :デフォルトの名無しさん :01/08/27 22:14 ID:EqDzKa/o
>>666
す、すまそ。Javascriptなしでも素直に見れるように
して欲しい。。。暇があれば。

695 :デフォルトの名無しさん :01/08/27 22:20 ID:EqDzKa/o
>>693
過去ログだけだとすると、普通のミラーサイトの方が完璧かも。
いわれてみればSite分散て手もあるな。
cgi側でミラーをご案内みたいな。

696 :デフォルトの名無しさん :01/08/27 22:29 ID:RRlePetc
かちゅ〜しゃのデータを相互に交換できる仕組み作るのが一番てっとり早いんでない?

697 :音楽侍 ◆NtVkSITE :01/08/27 22:31 ID:92bYvmYA
>>696
SuperNodeは誰がやるんですか?

698 :デフォルトの名無しさん :01/08/27 22:40 ID:xTh.0GTo
>>629のも一理あるな。
書き込みの少ないとこに対して、ミラーとかCache Proxy
以上に利点はあるのか。
2ch側のピアグループ一覧選択方法を要求されたurl情報を
元に工夫するとか、はたまた、2chのP2Pcacheご案内でなくて
ミラーご案内にするとか。何が一番いいんだろう。

699 :デフォルトの名無しさん :01/08/28 03:28 ID:mSc.uT8s
>>642 あげ

700 :デフォルトの名無しさん :01/08/28 03:46 ID:dJ9UWh8E
>>686
266/375の構想だとHTTPDが要るからできないんじゃないのソレ?
組み込めばいいのかな。

なんだか現状、
ミラーサーバで負荷分散、って意外と難しそうな雰囲気だよね。
2chが凄すぎて引き受けた先がパンクしそうで躊躇しちゃう、って感じ?

701 :デフォルトの名無しさん :01/08/28 03:55 ID:HVcD6kf2
今回の問題に則して考えれば、
マイナー板は誘導で解決できる。
メジャー板の負荷分散がインテリジェントに出来れば
いいんじゃないのかな。

702 :デフォルトの名無しさん :01/08/28 04:13 ID:dJ9UWh8E
>>686
やっぱしP2P-cacheだと現実的じゃないなあ、
Refresh後に紹介相手がいなくなってる可能性大だと思う

703 : :01/08/28 04:14 ID:N/BUjlEA
こんな時間になんだけど、今月いっぱいで2ch閉鎖説が出ている。
運営側も腹をくくったらしい。ソースはあちこちの板で。

この板での試みは、無駄なのか?

704 :デフォルトの名無しさん :01/08/28 04:24 ID:dJ9UWh8E
>ソースはあちこちの板で。

そういうのはソースて言わない
夜勤か切込隊長かひろゆきの発言、もしくは
チェックメイト証明を出しなさい。

705 :名無し :01/08/28 06:51 ID:JS88tdBY
>>703
批判要望板見る限りでは、今月いっぱいの閉鎖は無いと見受けられたけど?
隊長やひろゆきが閉鎖を明言してるわけではないし
夜勤さんも年内でのおつきあい終了はとりあえず否定してたし
君の言うソースはどこからなのかな?

706 :VC++まだ箱のなか厨房(w :01/08/28 07:02 ID:BD3EkxyY
”2ch”に関するガイドライン @ガイドライン板
http://ton.2ch.net/test/read.cgi?bbs=gline&key=998313054

運営側の発言はここがまとまっています
「今月いっぱいで閉鎖」というのはあくまで見通しであり
運営側があきらめたというわけではないととらえるのが適切かと

それに、このスレ自体は2ちゃんが閉鎖されてもホットなトピックですし
議論をやめる理由にはならないと思います。

707 :名無し :01/08/28 07:16 ID:JS88tdBY
仮に近日中に閉鎖された場合、大量の難民によって
類似掲示板はひとたまりもなく潰される危険性があるから
閉鎖を視野に入れた開発は当然有意義になるし早期実現が望まれる
と言うか、このスレは従来のしがらみから脱却した
新しい掲示板類似文化を作り出そうと言うことなので
そもそも2chの閉鎖自体は関係ないのかもしれない

708 :デフォルトの名無しさん :01/08/28 07:46 ID:XQ1eM6xM
匿名で有料か、非匿名で無料か、が望ましいと思います。

709 :266 :01/08/28 09:20 ID:cEXkNGjY
できることはまだまだあると思う。
実装作業は仕事の合間を縫って継続中。
今はネット周りのコード以外はほとんど書いた状態。
仕事がなけりゃもっと時間使えるんだけど・・・(泣)

710 :VC++まだ箱のなか厨房(w :01/08/28 09:45 ID:BD3EkxyY
正直、2ちゃんより仕事の方を大事にした方がいいと思われ・・・
他のスレでもいえることだが・・・

711 :通りすがりのプログラマ :01/08/28 10:21 ID:uk4SLKk2
ハイブリッド型説得力ありますね。順次導入して効果があげられそうなので。期待age。

閉鎖なら閉鎖でポスト2chを狙って、中央サーバなしに移行とか。またビジネスモデルが楽しそう。

あとはパッケージというかクライアントの導入がしやすくなるといいですねぇ。

712 :__ :01/08/28 13:13 ID:aE5uBalY
コミュニティが消滅させられた。
何の連絡も警告も無しに、何重もの掲示板が消えた(合掌)。

有志により避難板が用意されたが、未だに2chのトップページにそこへの
リンクはない。運営者からはあいまいで部分的な説明があるだけで、正式
には何の説明もない。ここもいつ消えるか分からない。2ch.netに依存する
のは危険。

掲示板はビジネスにならない。P2P化されたとしても、どうやって収益?
広告モデル(w 本題と異なるのでsage

713 :通りすがりのプログラマ :01/08/28 13:44 ID:uk4SLKk2
>コミュニティが消滅させられた。
>何の連絡も警告も無しに、何重もの掲示板が消えた(合掌)。

予兆があるだけましかなーと。
三層にも、サーブレットにもしてなかったというほうが驚きです。
お金は一時期あったはずなので(ひろゆき氏いい車買った情報に基づく)、
開発にも投資していると思ったのですが。
これだけ勢いがついていれば、2ちゃんねらーの有志を雇うとか、
オープン化して、2chクローンをいくつか立ち上げておくとか(慌てて作るよりプロトタイプが動いていれば
板休止も納得いくでしょうに)。
CEOは先を見てくれないと。

>掲示板はビジネスにならない。P2P化されたとしても、どうやって収益?
>広告モデル(w 本題と異なるのでsage

P2Pも海の向こうでおおこけだから、商売は考えないほうが...。
今だとアフィリエイトに力を入れてるところが多いけど、一過性みたいだし。
きわものとしか組みにくいというのも弱点だったかも。
有志による分散型中央サーバで管理(藁

714 :デフォルトの名無しさん :01/08/28 14:08 ID:/J/VCZIY
そもそもビジネスじゃないじゃん。
つーか板違いにもほどがある。

715 :ぬゎぬゎすぃ〜 :01/08/28 14:39 ID:2ETzjtYA
>>666
わかりやすいですね。
今の2chというかたちで存続させるには、実用性のありそうな策だと思います。

「2chを救うツールです、みなさん協力してください」というスタンスで配布するより
インストールした人にとっても便利な道具であった方が利用者は増えるでしょうね。

・新しい書きこみをローカルに適宜取りこんでくれる
・専用ビューアと組み合わせて、かちゅーしゃ的お便利ツールを形成する

というあたりのメリットを訴えて普及を促すとか。

#余裕があったら集計用鯖立てて、自分の飼っているhttpdが
#他ユーザの解決に貢献したら1ポイント加算、とか。
#「名誉」を賞品にしてポイントレース...いや忘れてください。

716 :ななし :01/08/28 14:51 ID:TF2Y3iLY
というかさ、今のcgiを使って一部の板を外部に出せるかを考えた
ほうがいいのでは?それで、サーバー提供者が現れなければ、
P2Pも夢で終わってしまう。
まあ将来を見越してP2Pを考えることも決して悪いとは思わないが
実現する可能性で考えた場合、かなり難しいと思うがどうよ。

717 :  :01/08/28 15:33 ID:wbPRJa5.
>>716

>>666 の方法だったら、設定ひとつで変更できると思うよ。
新しい鯖に移行した際に、見に行くサーバ名を変更してやればいいんでないかと。

718 :  :01/08/28 16:26 ID:qtXNeTyw
ひろゆき、聞いているか? 理系、技術系の広告で雑談板が養えるぞ。 専門性が高ければ高いほど金になるぞ。
絶対に理系板と技術板は手放してはいけない。
どっかの巨大企業が安値でコンビニ子会社を手放したら
そのコンビニ企業が大成長してしまったでしょう。
バイオ企業広告で飯を食っているメディアはこんなになるぞ。
http://medwave.nikkeibp.co.jp/ndi/index.shtml
http://biztech.nikkeibp.co.jp/biztech/medi/
http://medwave.nikkeibp.co.jp/health/
http://biobiz.nikkeibp.co.jp/biobiz/index.html
http://biotech.nikkeibp.co.jp/NBTOL/
http://medwave.nikkeibp.co.jp/nhc/
http://medwave.nikkeibp.co.jp/nm/index.shtml
http://medwave.nikkeibp.co.jp/MED/
http://biotech.nikkeibp.co.jp/BIO.shtml
2ちゃんの生物板や医者板にバナー広告をつけたがる企業が無尽蔵にいるぞ!
生物板は動物好きが野生動物板に隔離されたので
純粋なバイオ系の研究者しかほとんど残っていない。
チェッチェンの首切り画像を生物板で紹介したら
ほとんどの研究者はその恐怖画像を知らなかったので
不潔な板との接触が少ない人材がそろっているぞ。
教授の悪口を書くと、すぐにその教授が反論することもあるから
大学の予算を決める、機器購入決定権のある教授も見ているぞ。
この実態を知れば、バイオ企業は広告を打つぞ。
ヤクルト、明治製菓、萬有製薬、サントリー、大塚製薬、寶酒造、協和発酵などなど
(他にもある具体的な企業名は生物板の連中に聞け、レスが遅いと思うが
 ■■■■■ 生物版自治スレッド ■■■■■
 http://cheese.2ch.net/test/read.cgi?bbs=life&key=994669460 )
コアな人材を求めるコアな東証一部上場企業はたくさんいるぞ。
試薬メーカー、検査機器メーカーも涎をたらすぞ。 専門性が高ければ高いほど金になるぞ。
化学板なら化学メーカーが広告につくぞ。理科系技術系は金になるぞ。 !

719 : :01/08/28 17:20 ID:gBeq28w6
ここのハイブリッド型P2Pが今の2chを救うのにぴったりな
気がするぞ。間に合うかどうか心配だけど。
もっとここに人を集中させたらいいんじゃないの?なんかいまいち
マイナーな扱われ方されててちょっと不思議なんだ。

720 :375 ◆MsUYMX0E :01/08/28 17:22 ID:efUShCBo
>719

ご期待ありがとうございます (^^;;;

えっと、
http://203.174.72.113/p2pcache/P2Pcache/frame.htm
をだしてからそろそろ丸1日経過しましたし、具体的な
実装始めたほうがいいんですかね?
とりあえずやることは
●各プロトコルの設定

ですか?

266さん、いらっしゃったら返事ください。

721 :デフォルトの名無しさん :01/08/28 17:28 ID:crVbQDjo
>>713

あれは買った自転車に「ベンツ」って愛称をつけてたんでしょ

722 :266 :01/08/28 18:28 ID://bFJTXs
>>720
ども。手元の実装は6〜7割方片づいてます。
セッションマネージャのテストとデバッグができたら
ネットアクセス部分を書いてひとまずクライアント側は形になります。
仕事と並行なんで結構きついんすがなるべく早めに書き上げるつもりです。
プロトタイプは多分このまま俺一人でやった方が早いと思います。
目標は明日夜の実験用プロトタイプリリースです。

で、この後の問題なんですが
鯖側環境をどうやって作るかでちょっと迷ってます。
いきなり 2ch.net 上に cgi を置いてもまずいでしょうし。
どなたか適当な場所に 2ch そっくりの環境を作れませんかね?

723 :デフォルトの名無しさん :01/08/28 18:35 ID:efUShCBo
>722

あ、お疲れ様です。

ところで確認になるんですが、いまキャッシュ間のセッションのプロトコルって
TCPの上になにを流してるんですか?
>538 とかの構造体をSerializeしたものそのままですか?

サーバについてはたしかにテストサーバが欲しいですね。

[キャッシュ型負荷分散システム開発スレッド]
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998908154

でも鯖探してるみたいなんで相乗りできないかな?

724 :266 :01/08/28 18:43 ID://bFJTXs
>>723
おっしゃる通り件のデータをシリアライズしたものです。
TCPから上の層は全部独自プロトコルになります。
バイナリでメッセージのパケットをやりとりする予定です。
実際のデータのやりとりはメッセージ単位になるんですが
ある一連のメッセージの固まりに対応する
状態管理用のインスタンスが各ピアに生成されるんで
このインスタンスとこのインスタンスによって管理されるメッセージの全体を
セッションと呼んでいます。

725 :375 ◆MsUYMX0E :01/08/28 18:56 ID:efUShCBo
>724

うーん。ま、いまはアーキテクチャの検証なので独自プロトコルでも
いいんですが、今後はXMLとかにしたほうがいいかもしれませんね。

もっとも今はプロトの完成を優先させたほうがいいと思いますので
よろしくお願いしますです。

726 :266 :01/08/28 19:01 ID://bFJTXs
>>725
その辺には柔軟性を持たせてありますんでご心配なく:)
シリアライザさえ書き換えればテキストにもXMLにも対応できます。

727 :ネジ :01/08/28 21:04 ID:KZ340Mcw
>>715
いっそかちゅ〜しゃの機能のひとつとして組み込んでしまっても良さそう。

728 :デフォルトの名無しさん :01/08/28 23:02 ID:D1LGeUx.
>>700
>266/375の構想だとHTTPDが要るからできないんじゃないのソレ?
>組み込めばいいのかな。
今の話だと、Clientから見てHTTPd or Proxyにみえるような機能を
組み込む話だったと思う。

>>702
>やっぱしP2P-cacheだと現実的じゃないなあ、
>Refresh後に紹介相手がいなくなってる可能性大だと思う
それは課題だが、紹介先になる相手に関しては常時接続のとこを
選んで、開始終了通知を2chに対して行うようにするとか、
策はないわけではないと思う。

729 :デフォルトの名無しさん :01/08/28 23:05 ID:D1LGeUx.
>>715
正味な話、かちゅーしゃの人を巻き込むのは可哀想と思う。
こういうことを想定して作ったかというとわからんし。
本人の意志次第だけど。

730 :729 :01/08/28 23:07 ID:D1LGeUx.
715->727

731 :デフォルトの名無しさん :01/08/28 23:13 ID:D1LGeUx.
>>722
HTTPd : http://www.apache.or.jp/ でWin版
perl : WinPerl http://www.sosb.com/hp/apache/ 参照
ちょ〜簡単Apache For Win32 (win95,win98) ...

で、ローカルテストはだめ?

732 :266 :01/08/28 23:17 ID://bFJTXs
>>731
やってみます:)

733 :最初から名無し :01/08/29 00:09 ID:BWWAYazA
Win32環境でアクティブパールなら入っているが・・・
因みに回線とてーも細いのでちょっとしたテストぐらいにしか使えないが
提供するかい?

734 :375 ◆MsUYMX0E :01/08/29 00:26 ID:Df87R1cY
ところで 266 さんはクライアントとキャッシュ(ピア)を作られてるって
ことですよね?

2ch.net におく新cgi ってどうなってるんでしたっけ?

あと 1さんの >570 の書き込みは期待していいのかな?

735 :デフォルトの名無しさん :01/08/29 00:34 ID:PFBD8yCo
>>734
まったく決まってないよ。
266さんのI/Fに沿う形から叩きあげていくと思ってる。

736 :デフォルトの名無しさん :01/08/29 00:38 ID:Df87R1cY
>735

了解。ってことは read.cgi とか bbs.cgi 開発してるかたがたとも
連絡とったほうがいいのかな?

でもその前に仕様を詰めたほうがいいかも。
ということで再掲
---
●2ch.net 側の実装物について
ピア管理を行う CGI の実装が必要。
次のような動作をするものでよい?

基本的な動作は 2ch.net 上の各種のリストを読み出すこと。
動作パラメータは次の通り。

  do:読み出し対象リストの選択。値は以下のいずれか。
    threadlist = スレ番号の一覧
    reslist = レス情報の一覧
    abornlist = あぼーんされたレスの番号の一覧。
  board, thread:板やスレッドの指定。
  from, to, ls, nofirst:read.cgi に同じ。読み出し範囲の指定。
  bycontent:do==reslist && bycontent==true ならばレスの文面を返す。

レス情報は、レスIDとレスサイズ、ハッシュのペアからなる。
レスIDは時系列にそって順序比較が可能で各レスについて固有であれば何でもよい。
reslist bycontent はキャッシュヒットしなかった場合の差分更新に用いる。
※レスIDには ETag が使える?
---

737 :375 ◆MsUYMX0E :01/08/29 00:47 ID:Df87R1cY
名前入れ忘れてもIDでばればれなのはある意味便利かも(^^;;

では はじめに do = threadlist からいきましょうか?

まず read.cgi との互換性から考えて
board -> bbs
thread ->key
のほうがいいと思います。

で、
p2p.cgi?bbs=tech&do=threadlist にたいしては
990334284 990335283 990334286 99033625
ってな感じのスレIDとハッシュをかえすのですが (>>390 あたり参照)

このとき返すハッシュというのは何のハッシュなんでしょう?
1.最新レス10個分についての全レスを一つにまとめたもののハッシュ
2.最新レス10個分について最新10レスずつ を一つにまとめたもののハッシュ
3.最新レス10個分についてそれぞれ最新10レスのハッシュ(ぜんぶで10個)

3がいちばんいいとはおもうのですが。
(上位10スレ表示で、それぞれ最新10レスを表示すると仮定してます)

738 :266 :01/08/29 00:59 ID:LcXmxRIU
>>737
ハッシュはレス情報リスト(=reslist)の時にのみ生成することを想定しています。
スレリストや板リストの場合にはスレIDおよび板IDの一覧のみでOKです。
なお、レス情報リストの時のハッシュは1レスごとに1ハッシュ(っていうかMD5)です。

739 :デフォルトの名無しさん :01/08/29 01:02 ID:PFBD8yCo
>>736
個人的な考えだが、bbs.cgiは極力さわらず、
read.cgiの改造(というか新規)と追加cgiの作成が必要で
これらを全部それなりに作ってみせた後でないと
向うの手をわずわらせてはいかんと思う。

これらの作成は266の終ったあとからだと遅いかもしれんね。
とりあえず、必要なものを列挙して、266に外部I/Fを確認して
作るしかないか。

とりあえず思い付く範囲。

[2chToCache_List]
2chから板/スレ(& hash)/他CacheIP Port一覧取得用

[2chToCache_Article]
2chから記事取得用

[2chToCache_ArticleHash]
2chから記事hash取得用

[2ch_DeleteArticle]
2ch側記事削除用(既存のでレス番が一意で無い場合)
# 現在の削除cgiが行毎削除だとレス番がずれる。
# Hashみて工夫する場合には不要かも。

で、2ch直接接続をRefresh(or Location)用のcgiは後まわしかなぁ。

740 :デフォルトの名無しさん :01/08/29 01:07 ID:PFBD8yCo
>>739
て、なんか間違ってる気もする。
2ch(cacheが誰もいない時)からの記事の取り寄せとチェックはどない
でしたけ。

741 :デフォルトの名無しさん :01/08/29 01:08 ID:Df87R1cY
>738

あ、了解です。
ってことは

p2p.cgi?board=tech&do=reslist&thread=94723004

にたいしては

↓バイト数    ↓MD5(32Byte)
134,899ff335faf5ff334577 (=res1)
234,899ff335faf5ff334576 (=res2)
234,299ff335faf5ff334577 (=res3)

というようなのが帰ってくるわけですよね?
これはどうやって返します? たとえば
上ではMD5は16進表記でASCIIにして
全体をCSVにしてますけど..

742 :266 :01/08/29 01:08 ID:LcXmxRIU
>>739
俺としては既存の CGI に対しては、

1)レス発言時のハッシュの生成と記録。
2)スレ立て、順位変動時の一覧の更新。

という二つの機能の追加だけを行って、
データの読みとりには p2p.cgi みたいな名前の
専用のものを追加する形を考えてます。
既存のものに対しては追加のみを行う格好です。

743 :375 ◆MsUYMX0E :01/08/29 01:09 ID:Df87R1cY
>740

既存のread.cgi をそのまま使うっていいのでは?

あと記事削除cgiは必要ないです。基本的に投稿と削除は
現状維持を考えてます。

744 :266 :01/08/29 01:11 ID:LcXmxRIU
>>741
特に拘りはありません。
鯖から拾ってきたリストは適当なフィルタに食わせるわけですが
そのフィルタが作りやすければなんでもいいです。
提示して頂いた16進ASCIIのCSVでもBCBならVCLの
StringクラスとStringListクラスを使えば一発で処理できるんで問題なしです。

745 :375 ◆MsUYMX0E :01/08/29 01:19 ID:Df87R1cY
>744

了解です。あとあぼーんなんですけど

単にあぼーんされた
287 名前:あぼーん 投稿日:あぼーん
あぼーん

とかはMD5の不一致により2ch.net から再度読み込むという
処理に組み込めるのですが

レス番ごと切り詰められたあぼーんの場合どうします?
たぶんそのために do=abornlist を作られたのだと思うのですが
できたら具体的な動作を教えていただけると嬉しいです。

746 :デフォルトの名無しさん :01/08/29 01:21 ID:PFBD8yCo
>>all

1)レス発言時のハッシュの生成と記録。
bbs.cgi改造案と、read.cgiでのリプライ時に計算してつけるのと
ありますが、方針としては、bbs.cgi変更の方がよかですか?

2)スレ立て、順位変動時の一覧の更新。
スレ&板の追加/削除用ですね。
スレNUM==順位でhash確認?のようには変動しても平気?
それともスレNUMの他に順位項目が必要?

3)データの読みとりには p2p.cgi みたいな名前の
記事自体と、記事hash取得と両方は必要ですよね?
と、それだけあればいいですか?

747 :375 ◆MsUYMX0E :01/08/29 01:29 ID:Df87R1cY
>746

1)
たしかに毎回計算するよりは bbs.cgi で一緒にdatに埋め込んだほうが
いいと思います

2)
ハッシュはスレID(key)と1対1対応になります。
順位はCSVの並び順って言うのが素直な実装かと。

3)
記事自体の取得は従来の read.cgiで、
ハッシュと上位記事取得は p2p.cgi です。

あ、あとクライアントが呼び出すピアのID取得はどうしましょう?
別のcgiにします?  

748 :デフォルトの名無しさん :01/08/29 01:29 ID:PFBD8yCo
>3)データの読みとりには p2p.cgi みたいな名前の
>記事自体と、記事hash取得と両方は必要ですよね?
すまそ。記事自体はread.cgiだたね。
p2p.cgiではhashだけあればよいのね。

でもここ夜はいつも三人な(藁

749 :しろうと :01/08/29 01:33 ID:c6SAVs3Q
みなさんごくろうさまです。
応援だけしかできませんが
がんばってください。

750 :266 :01/08/29 01:34 ID:LcXmxRIU
>>745
レス情報一覧とも絡むんですが
一番望ましいのはレス一個ごとに固有のIDが振られることです。
その上で、あぼーんリストにはあぼーんされたレスのIDを並べておくわけです。
レスのIDはスレ内で一意で且つ順序比較ができれば中身は問いません。
このIDは切りつめ不能なものでなければなりません。

751 :266 :01/08/29 01:36 ID:LcXmxRIU
>>746
1)は俺も bbs.cgi に機能追加する方がいいと思います。

2)は >>747 で 375 さんがおっしゃってる通りです。


>>747
ピアのアドレス一覧は read.cgi あたりで生成しておけばいいでしょう。
これを読みに行くときは保存されたデータファイルを直読みするか
何かの cgi を追加してそいつ経由で読むかですね。
後者だと 2ch 側で負荷を見て色々と調整できるだけ柔軟でいいと思います。

752 :266 :01/08/29 01:38 ID:LcXmxRIU
>>748
あまりに人気がなくて、作ってもそのまま無視されかねないかも(藁

ところでどっかにうぷ板ありません?
説明用の図を一枚作ったんで上げておきたいんすけど。
説明文がまだなんですが参考にはなると思います。

753 :375 ◆MsUYMX0E :01/08/29 01:38 ID:Df87R1cY
bbs.cgiスレに
--
datファイルの書式

【各々レスに埋込案】
<b>名前</b>,sage,01/04/06 22:50 IDxxxxxxx,本文,スレタイトル,nnmmpppqqqq
<b>名前</b>,sage,01/04/06 22:50 IDxxxxxxx,本文,nnmmpppqqqq

nn は62進数2桁でこの行のレス番号を記録
mm は62進数2桁でこの行のバイト数を記録
ppp  は10レス前の絶対バイト位置 % (62^3)
qqqq は50レス前の絶対バイト位置
現在のファイルポインタよりmm+1バイトが'\n'なら正常とみなす

【アボーン時の処理】
あぼーん時は同じサイズで塗りつぶすようにする。
インデックスのレス番号に00を入力したレコードを出力する。

あぼーん,,,,,00mm

って感じでどうでしょうか。
--


みたいなことが書いてありましたけどこれで確定なのかな?
もしこれならレス番号(=nn)は あぼーんされても変動無く一意に
なるのですが..
ただこの場合切り詰めあぼーんのときに実際のレス番号と
nnが食い違うことになりますが..


>でもここ夜はいつも三人な(藁
アラーシがこないだけましということにしましょう(笑


754 :デフォルトの名無しさん :01/08/29 01:42 ID:.vw5ElIM
>>753
切りつめあぼーんてまだ必要かな。

755 :375 ◆MsUYMX0E :01/08/29 01:45 ID:Df87R1cY
>754
廃止とか言う話もあるんですか?
他のスレ追いきれないもので..

756 :デフォルトの名無しさん :01/08/29 01:46 ID:PFBD8yCo
>>752
http://www8u.kagoya.net/~lolink/cgi-bin/imgboad.cgi
おっぱいあぷろーだ(藁
もっとましなのないかな...

757 :デフォルトの名無しさん :01/08/29 01:49 ID:Df87R1cY
>>751
ピアのアドレス一覧は read.cgi あたりで生成しておけばいいでしょう。
これを読みに行くときは保存されたデータファイルを直読みするか
何かの cgi を追加してそいつ経由で読むかですね。
後者だと 2ch 側で負荷を見て色々と調整できるだけ柔軟でいいと思います。

了解です。では
getpeer.cgi?bbs=tech

175.47.4.4,1300
127.53.15.44,1250
17.74.0.13,130
みたいなIPと何らかのピアの重み付け が帰ってくるとかいう
感じでしょうか?

まぁ最初は重み付けは全部100とかでいいとおもいますけど。

でもこれだとピアグループが実現できないなぁ..

758 :266 :01/08/29 02:01 ID:LcXmxRIU
>>757
read.cgi で板ごとのディレクトリに分けて
ピア一覧を保存すればグループが組めます。
ピアの重み付けなど最適化に関するパラメータは今後の課題ということで。
それと、ピア一覧を作る時には read.cgi 中で
ピアの情報を取得しなくちゃいけませんけど
これは USER_AGENT にその辺の情報を入れておくってあたりを考えてます。
User-Agent: P2Pcache/1.0 port:xxxx みたいな感じで。

759 :375 ◆MsUYMX0E :01/08/29 02:08 ID:Df87R1cY
>758

USER_AGENTでPort指定 っていうのはいいアイデアですね。

ところでふと思ったんですけど

レスごとにピアを管理

スレごとにピアを管理

板ごとにピアを管理

ピアグループごとに板を管理

ピアをすべてまぜて管理

の順に2ch.net の処理は軽くなり、かわりにキャッシュヒット率はおちる
(ピアのリストの質が落ちる)
と思うのですが、現状の処理能力からして板ごとの管理で
いい気がしてきたのですが...

760 :266 :01/08/29 02:13 ID:LcXmxRIU
>>759
ん?おっしゃってることがちょっと分かりません。
ピアグループというとJXTAのアレみたいなのがありますが
P2Pcacheの場合にはああいうきちんとしたグループはありません。
クエリーを投げる対象が
ある板に現在登録されているピアの集合に限定されるわけですが
そのピアの集合のことをピアグループと呼んでいます。
実際にはこのピアグループに SearchMessage を投げると
メッセージが増殖してグループから染みだしていくことになります。
2ch.net 側は単に板ごとの現在の住人のアドレスを管理するだけです。

761 :375 ◆MsUYMX0E :01/08/29 02:16 ID:Df87R1cY
>760
あ、ごめんなさい。勘違いしてました

板ごとにピアを管理する ってことですね。汗汗

762 :デフォルトの名無しさん :01/08/29 02:39 ID:PFBD8yCo
266 & 375
メイルくれぃ。和GEOに場所とった。
パス公開すると荒されてすぐ削除されそうだから
とりあえず何人かに送る。

763 :デフォルトの名無しさん :01/08/29 02:49 ID:PFBD8yCo
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/
ちなみにテキスト程度orUUENCODEとかなら、
ゲストブックに書くという手もある。その場合はメイル不要。

764 :デフォルトの名無しさん :01/08/29 02:54 ID:PFBD8yCo
guestbookは、最初にかきこんでエラーになったら
再度書き込みすると二度目はOKみたい。

765 :デフォルトの名無しさん :01/08/29 04:13 ID:ZBY2WPkM
あ、375さんはページとりあえずあるんですよね。(^^;
必要or共用した方が効率がよければ、メイルください。
と、こっちを266さんのファイル置き場にして、
375さんのページから物だけ参照してもらった方が
てっとりばやいかな。
とりあえず説明図を頂いたのでおきました。
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/files/P2Pcache.jpg
# pngを頂きましたが、jpgに変換しました。

766 :375徹夜決定 ◆MsUYMX0E :01/08/29 04:25 ID:Df87R1cY
うけとりました。サンクス。

あの図はピア内部の構造図ですよね。

そろそろ具体的なプロトコルも含めた開発者向けのプレゼンを
作ろうと思っているので、ぜひ使わせていただきます。

767 :375 ◆MsUYMX0E :01/08/29 06:01 ID:Df87R1cY
上の図眺めててふとおもったんだけどさ、
ピアって普通のプロバイダのcgiとして設置すること可能じゃない?

2ch.net にはポート番号じゃなくて

"www.provider.ne.jp/hoge/peer.cgi"
のように呼び出すCGIを登録する。


たとえばSearch message をわたすときは

www.provider.ne.jp/hoge/peer.cgi?type=search&count=5&bbs=tech&key=19510437

で、返事はXMLで返すようにすればperlで実装可能だし。
ただ永続的に動くわけでないので状態管理が少し面倒になるのと
プロバイダからすぐ追い出されそうなのが欠点だけど..

768 :デフォルトの名無しさん :01/08/29 13:46 ID:jAssUvRc
すばらしいスレですね。
応援だけしかできませんが頑張ってください。

769 :375 ◆MsUYMX0E :01/08/29 17:40 ID:RZ89zfy6
うーん、昼は昼で反応ないなぁ
それとロケット打ち上げ成功おめでとう

>767 のアイデアなんだけど、実際プロクシCGIのようなアクセス受けてさらに
他のホストにアクセスできるCGIがおけるプロバイダってどれぐらいあるんだろ?

おしえてWebProg板の偉い人?

770 :デフォルトの名無しさん :01/08/29 20:53 ID:NuzxCJ3M
perl で言うと LWP モジュールなどが使えるってこと?
それなら無料レンタルスペースでもいくつかあると思うけど。

771 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/29 21:05 ID:DVACnJqw
128KbpsのOCNエコノミーでもいい?
いいんならテスト用のサーバ立てるけど。

772 :266 :01/08/29 21:17 ID:FM3PGJUk
>>771
おおっ、ぜひともお願いします。

773 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/29 21:29 ID:DVACnJqw
>>772
了解です。
ただ、すぐにというわけにはいかないので来月まで待ってね。
それまで、うちのwebサーバでよければ実験用に貸します。
スピード遅いけど。
#現在Linuxインストール中(^^;;週末にインストール予定。
一応グローバルIPにまだあまりがあるから2ch.tokyo-nazo.net
立てるんで。unix板のミラーリング計画と共用ってことで。
インストール前だから聞くけど、HDD8Gじゃ足りないかな?

774 :266 :01/08/29 21:36 ID:FM3PGJUk
>>773
あくまでも実験用なんで容量や回線は要求しないと思います。
鯖側に放り込むものは現状の 2ch とほぼ同じ環境と
幾つかの拡張 CGI (perl製)ぐらいで済みます。

775 :デフォルトの名無しさん :01/08/29 21:54 ID:E8zeMvHE
266さん、375さん、メイルを送りました。
届いていなかったら教えて下さい。
# 375さんはたった今送りました。

776 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/29 22:02 ID:DVACnJqw
>>774
なら、専用サーバ立つまでは今あるwebserverにぶちこみますよ。
近々独立させるとしても。
ということでよろしいですか?
ただ、社会人なので夜とか朝しか更新もメール読むのもできない
点は勘弁を。

777 :266 :01/08/29 22:06 ID:FM3PGJUk
>>775
俺の方へはまだ届いてないみたいです。
遅延しまくりの freemail だから少し時間掛かるかも。

>>776
ありがとうございます。
ちょっとした実験だけなんで 2ch もどきがあれば十二分です。
ご協力ほんとに感謝です。

778 :375 ◆MsUYMX0E :01/08/29 22:11 ID:RZ89zfy6
メールいただきました。
ご協力に感謝いたしますです。

779 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/29 22:12 ID:DVACnJqw
>>777
困ったときはお互い様。
それでも礼を言うならラウンジャーに言ってくださいな。
私を動かしたのはあるラウンジャーからの一通のメールだから。

具体的に何をするか教えてくれれば今夜か明日の夜にはスクリプト
放りこみます。

780 :デフォルトの名無しさん :01/08/29 22:14 ID:E8zeMvHE
>>777
念のため、もう一度送りました。
二通届いたら破棄してください。

781 :266 :01/08/29 22:24 ID:FM3PGJUk
>>775
メール届きました。
昨晩いただいた分でしたね。
返事しないでいたのすっかり忘れてました。すいません。
和塩の方は配布サイトなどに活用させていただきます。

>>779
ってことはこのスレ、ひそかに期待されてるんですね。
是非ともがんばらなくちゃいけませんね。
なるべく早めに必要な設定項目などをまとめてここに書いておきます。

現在の実装状況は次の三つを残して全て完了したところです。

1)サーバーからのデータ取得。
2)ピア間のデータ交換処理(ソケット周り部分のみ)。
3)セッションの状態遷移管理。
4)収集したレスの表示用整形ルーチン。

1)は鯖側 CGI とペアになるんで実験のことも合わせて少し考えなくちゃいけません。
2)は単に TCP で繋いでストリームを交換するだけなんですぐです。
3)は処理フローは書いてある状態ですんでコードに落とすだけです。
 ただ、セッションの複製周りで少し検討したいところがあって保留しています。
4)はプロトタイプの段階ではほとんど整形しない生ログ状態の表示にします。

ひっかからなければ今晩中にもの自体は実装できそうです。
ただ単体じゃ実験にならないんで屋内のLANを使って
ちょっとした実験をやるつもりです。

今から風呂はいってきます(藁

782 :266 :01/08/29 22:25 ID:FM3PGJUk
>>781
三つじゃなくて四つでしたね(藁

783 :375 ◆MsUYMX0E :01/08/29 22:29 ID:RZ89zfy6
すぐ上のスレから引用 (^^;;

今のところ「bbs.cgiは公開しない」という方針だそうなので、
出来ることは仕様の策定と、実装実験のみですね。

あと、ここまで話し合ってきたdatの新仕様案について、他のス
レッド(ミラー、P2Pとか)の方々とか、実際動いているスク
リプトの保守をしている管理側の方とか、monazillaプロジェク
ト(専用UAの作者)の方々とかの意見が聞きたいです。
特に現在のbbs.cgiの保守をされている方の意見が聞きたいなあ。
(このスレッドは見られているのでしょうか?)

簡単に現在出ている案をまとめます。(括弧内は私見です)

◎あぼーんを塗りつぶしで行う
 ほぼ同意を得られたと思っています。特に反対意見は無かった。

◎インデックスの作成方法。
・別ファイル(一番単純だけど、別ファイルになるのが何とも)
・dat冒頭に20レス毎、50レス毎の領域を作る。(単純さは
 良いのだが、現在のdatの仕様とかけ離れてしまいそうな。)
・dat冒頭に1000レス分領域を作る(1000全部は要らないような)
・レス毎にフィールドを作成し、1レス前50レス前等のインデ
 ックス情報を追加。(現行のdatに即するならベスト。ただ、
 作成、解析の手間が煩雑かな。)
(どれにせよ、インデックスの修復機能は実装する必要がある)

◎あぼーん情報
・datのレコードに即した構成であぼーんレコードをdat内に追加する。
・レスの毎にフィールドを追加して、あぼーん情報をそこに納める。
(あぼーん情報の保存方法は、どっちもどっちの様な気がしてます。)

われわれとしてこれにコメントすることをまとまませう..

まず思いついたのが
・datにハッシュを一緒に埋め込んで欲しい
・インデックスを修復してもあぼーんしたメッセージを飛ばさないでほしい
(レスの番号が変化しないようにして欲しい)

ほかなにかありますっけ?

784 :デフォルトの名無しさん :01/08/29 22:46 ID:E8zeMvHE
>>783
スレの上げ下げの一覧作成はどのタイミングでしたっけ?
bbs.cgiあたり?

785 :デフォルトの名無しさん :01/08/29 23:10 ID:QIUPlCko
>783 bbs.cgiを弄ってたトオル★は、2chを去るそうです。合掌。

786 :266 :01/08/29 23:12 ID:FM3PGJUk
>>783
毎度です。
こちら側が鯖に求めるのは次のリストの管理と提供です。

1)過去の一定時間内にその板にアクセスした P2Pcache ユーザーのアドレス一覧。
  IPとポートが必要です。
  加えて P2Pcache のバージョンとかもあった方がいいかも。

2)板の一覧。
  板のIDと名前のペアの一覧が必要です。

3)板に属するスレの一覧。
  スレのIDと名前のペアの一覧が必要です。
  このスレのIDはフローティングの順序にそって並んでなくてはなりません。

4)スレに属するレスの一覧。
  レスのID、サイズ、ハッシュ(MD5)、の組の一覧が必要です。
  レスのIDはスレ内で一意で且つ順序比較が可能であることが必要十分条件です。
  ※今思いつきましたが無効ハッシュ値をあぼーんフラグにしてもいいかも。

5)レスの内容の一覧。
  キャッシュヒットしなかった時に差分更新するために
  レスの内容を個別に取得できる必要があります。

これらが鯖上でどのように保存されるかは問いません。
適当な名前の専用 CGI (p2p.cgi とか)を経由して取得できればOKです。

330KB
新着レスの表示

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

0ch BBS 2004-10-30