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

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

1 :デフォルトの名無しさん :2001/05/20(日) 13:51
2chのような掲示板システムってP2Pで実現できないかなぁ?
匿名が基本なんで、P2Pでうまくいくような、、、なに?P2Pだと匿名化できない!?!?
えらい人教えて!

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です。

787 :266 :01/08/29 23:13 ID:FM3PGJUk
sageで書いてしまった。

788 :デフォルトの名無しさん :01/08/29 23:34 ID:E8zeMvHE
>>786
1)過去の一定時間内にその板にアクセスした P2Pcache ユーザーのアドレス一覧。
read.cgiが有力だったと思う。

2)板の一覧。
3)板に属するスレの一覧。
4)スレに属するレスの一覧。
現状動いているのそのままと言う意味で確かread.cgiが有力だと思う。

5)レスの内容の一覧。
:キャッシュヒットしなかった時に差分更新するために
:レスの内容を個別に取得できる必要があります。
これはread.cgiでID指定とFrom To指定で出来たと思う。
ただし、不連続なID複数は無理だったような。
MD5は、read.cgiよりもbbs.cgiの方が効率的だが、回避策はないこともないくらい。

と、考えると、read.cgiをparseして情報取得というのが
現状維持だが、効率とかを考えると適切でない場合もあると思う。

789 :デフォルトの名無しさん :01/08/29 23:37 ID:E8zeMvHE
>>788
板の一覧は、BBSTABLE(bbstable.html)か、今は。

790 :266 :01/08/29 23:38 ID:FM3PGJUk
>>788
read.cgi の出力はブラウザに表示することが前提でHTMLに整形されてますけど
こっちでは整形はクライアント側でやっちゃうんで
IDの一覧のみといった必要最低限の情報だけで十分です。
というより、そういう形になってないと
HTMLからデータを抽出することになりますんで
帯域を無駄食いする上に処理が半端じゃなく面倒になります。
やはり専用のデータ出力が欲しいところです。

>>786
自己レス。
板一覧にはサーバー名も要りますね。すっかり忘れてた。
メッセージフォーマットにもフィールドを追加しないと。

791 :266 :01/08/29 23:39 ID:FM3PGJUk
板のリストとしては次のようなのが嬉しいです。

板の名前 鯖の名前 板のディレクトリの名前

これが並んだ一覧です。例えば次のような具合。

プログラム技術 piza2 tech
プログラマー mentai prog

この一覧は CGI 経由じゃなくて
直アクセスでデータファイルを拾ってきた方がいいですね。

792 :デフォルトの名無しさん :01/08/29 23:42 ID:RZ89zfy6
あと
1)
なんですけど、やっぱり明示的にピアを登録、削除するCGIを
つけたほうがいいのか、正直また迷ってます。

こうする利点として
1)登録したピアを実際にポートをたたくなどして検証できる
2)モバイルユーザなどが不用意に登録されることを防ぐ
3)きちんと削除されればリストの質があがる

欠点として
1)作るものが増える
2)いたずらによる登録の可能性

があるのですが,,

あと上でちょっとふれた プロバイダ設置CGI型のピア などを実現しようとしたら
USER_AGENT だけで情報を送りきれるか? というのもあります。

793 :266 :01/08/29 23:45 ID:FM3PGJUk
>>792
モバイルユーザーや低帯域ユーザーの問題は確かにおっしゃる通りですね。
登録自体は手間ではないので仕様に追加するのは簡単です。
鯖側も負荷調整のための制御を除いては実装は簡単なはずです。
あらためて追加する方向で検討しようと思います。

794 :375 ◆MsUYMX0E :01/08/30 01:33 ID:hNhXzQ4g
今日はねます。

それと批判要望板からコピペ
--
599 名前:  投稿日:01/08/30 00:56 ID:28vIkHGU
■初心者のための2ちゃんねる存続危機解説(無断リンク)
http://home.att.ne.jp/wind/monsta/ga/2ch_kiki.htm
http://www24.big.or.jp/~faru/
ここに簡単なあらましが書いてある。

悲観ばかりではなく良い知らせもある。
「P2P cache」を応用した最終兵器を現在2ちゃん有志がテスト開発中だ。
「P2P cache」の応用ソフトはアニメのガンダムで例えて言うなら
追い詰められたジオン公国が開発した
最後のモビルスーツ「ジオング」のようなものだ。
完成は何週間、何ヶ月かかるかわからないが
邪魔しないように、我々はおとなしく待とう。
そして深夜は最大瞬間風速を起こさせないように寝よう。
最大瞬間風速がこの2ちゃん閉鎖問題の原因なのだから。

795 : :01/08/30 01:40 ID:uLXMKjs2
ジオングワラタ。

796 :225 :01/08/30 07:12 ID:YEMO5.RY
まあルータ経由とか、プライベートアドレスはどうするとか
色々考える点はあるんですが、まあとりあえず動くのが先でしょうね。
あとで仕様が変わっても困らないように作っておけばいいんだと思います

>>786
cgiじゃなくて、単にHPスペースにあげたログとかでも
資源として使えないかなと思うんですよね。
要は代わりにリクエストに反応するサーバンドがあればいいんですよね。
改ざんしやすい気がしますが、それはMD5の計算と照会で対応すると。
何となく、レス単独のものと、その時までのスレ全体のものとで、
2重化した方がいいかも?

まあ、動きの早い所では使えないかもしれませんが、
差分での補完を前提とすればいい話ですし
これなら、モバイルでも低帯域でも協力できるんじゃないかとおもいます

板の一覧はかちゅーしゃとかで使ってるのを流用するのが便利かも

レスIDは番号と投稿日の組でしょうね。
番号だけだと、透明あぼーんに対処出来なくて
投稿日だけだと、たまに順序が入れ代わってる時に対処できないんですよね。

797 :266 :01/08/30 16:40 ID:hTQMY4zg
ちょっとだけ報告。
設計にすごく無理のあるところがあったんで改修中(藁
もう粗方目鼻はついた状態にはなってます。
ただ鯖側環境がないんで実験は構成モジュールの単体テスト程度。
今日中に手元で最低限の実験をやっちゃいたいところですね。

798 : :01/08/30 16:47 ID:iTUnQuA.
おぉ、サーバも提供できないしコードも書けないんですけれど、テスター
が必要になったらいつでも声をかけてください。

799 : :01/08/30 17:35 ID:i2hacTto
あめざーや15chも2ch難民のために転送量でやばいという
噂ですね。
ひょっとしてこのスレが掲示板界全体を救うかも?....。私は門外漢で
何もできませんが応援してます。

800 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/30 21:14 ID:omnG8yq6
一応うちはたぶん指定から24H以内にテスト環境構築が可能なので
必要なら声をかけてください。

801 :266 :01/08/30 21:18 ID:hTQMY4zg
>>800
ありがとうございます。
手元でのテストをやってから皆さんにも
テスト参加へのご協力をお願いしようと思っているんですが
まだ手元でのテストの方に半日近く掛かると思います。
もしよろしければ、その間に 2ch.net と
そっくり同じ環境を作っていただけると助かります。
具体的な方法については俺の方が 2ch の CGI の設定に
あまり詳しくないので CGI 改良スレの方のご協力を仰ぎたいところです。

802 :せちがないにぎりめし ◆IgIufP86 :01/08/30 21:27 ID:0ksH/JrE
テストするサーバーってレンタルサーバーでもなんでもOK?
それなら好きに使ってくださいな
2ch存続にかけるプログラマー様を応援いたします。
info@i-love-you.gr.jp

803 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/30 22:47 ID:omnG8yq6
>>801
bbs.cgiがたしか非公開なのでそっくり同じってわけにはいかないが・・・
避難所あたりで使われているスクリプト(perl+java?)でいいのかな?

804 :デフォルトの名無しさん :01/08/30 23:05 ID:xr7HdTsk
>>803
あ、私もスクリプトは、2ch型掲示版の17さん?のを
見ているので後でレポートしますね。

805 :デフォルトの名無しさん :01/08/31 01:15 ID:en0PfAwQ
大変です、今まで風俗板で隔離していた現在にちゃんねる1のキチガイが
とうとう何か新聞沙汰になる事件を起こしそうです。
チキンアサゲ定食こと負け犬、本名アナル出欽(推定32歳) 別名けっこう仮面
吉原ソープベルコモンズで、アナル性交を強要しようとして
見つかり出入り禁止になったことから恨みを抱き、
当該スレでキチガイ屁理屈を2ヶ月に渡って毎日書き込んでいたんですが、
昨日とうとう、議論に負けて泣き出しました。
なにかとんでもないことになりそうです。
吉原ベルコモンズ Part6
http://www2.bbspink.com/test/read.cgi?bbs=club&key=997511823
このスレッドの>>623から>>711あたりにアナル出欽が逃げて
生き恥晒している醜態が克明に記録されています。
たぶん、恥ずかしくて死にたくなっているでしょうね。
ふつうこんな生き恥晒したら出てこれないですよね。

現在の負け犬の遠吠えぶりは最新スレでご確認ください。
吉原ベルコモンズ Part7
http://www2.bbspink.com/test/read.cgi?bbs=club&key=999042350    

806 :デフォルトの名無しさん :01/08/31 01:17 ID:Ha76ETsk
>>805
それより、こんな場違いなスレに書き込むお前の方が、将来ストーカー殺人とかやりそうで気になる。
話題提供のために、コテハンになれ。

807 :デフォルトの名無しさん :01/08/31 01:38 ID:a9UVJB/o
2ちゃんねるを救ってください。応援しています。

808 :デフォルトの名無しさん :01/08/31 02:27 ID:ndUPWWrU
17さん?のスクリプトに、掲示板一覧表示が動くように追加
(dat自体はもともと用意されてたが家ではうまく動かんかった)
と、一個掲示板を作ったデータ入りを置きました。

http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/files/bbscgi_r0100.tgz
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/files/bbscgi_r0100.lzh

ポイント?は、
public_html/admin/board.txt : 板一覧、<>区切り
public_html/mine/dat/subject.txt : スレ一覧、<>区切り
public_html/mine/dat/999189425.dat : 記事データ、<>区切り
かな。

1)設置方法は、鯖側でCGIを許可.
ex)
httpd.conf
---
<Directory /home/*/public_html>
Options ExecCGI
</Directory>
...
(snip)
AddHandler cgi-script .cgi
---

2) perlが、/usr/bin/perlでなく、/usr/local/bin/perlの時には、
tgz or lzhを展開後、org/perl_head.txtを編集し、カレントを
orgにしてから、./make.shを実行すると修整したものを入れてくれます。
うまく行かなかったら、手で直してください。:-)

809 :808 :01/08/31 02:31 ID:ndUPWWrU
あ、言い忘れましたが、上記のは、もちろんP2Pcache対応?していません。
ベースにするもしくはテスト用向きを想定しています。
叩き台の紹介です。

810 :266 :01/08/31 03:39 ID:GDt82F3U
生存確認で書いておきます(藁
ご協力ほんとにありがとさんです。
今手元で色々とテストをやりつつバグ取りしているところです。

811 :デフォルトの名無しさん :01/08/31 03:55 ID:UD5Z8ZfA
喜んで人柱になるぞ、ゴルァ!!

頑張って開発してくれやゴルァ!!

ところで、個人がキャッシュするものって、スレ単位ですよね?

812 :プログラム技術板様 :01/08/31 12:45 ID:wtkADUR6
↓「稲垣メンバー」言論統制に不毛の抗議をする2ch前線本部はこちら
http://kaba.2ch.net/test/read.cgi?bbs=news2&key=999224058

813 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/31 13:49 ID:44wU9PJg
すみません、>>808の元となったプログラムってどこにあるんでしょうか。
どうせ立てるなら某所の避難所兼用にしたいので・・・。

814 :266 :01/08/31 14:05 ID:GDt82F3U
再び生存確認で書き込み。
着々と進んでます。かなりいい具合です。
ピア接続実験がまだですが普通に使っててもレス単位でのローカルキャッシュが効きます。
大分遅れましたが明日朝までにはロールアウト間違いないでしょう。

815 :デフォルトの名無しさん :01/08/31 14:07 ID:r.U1h5gk
>811

基本的にはレス単位です。でも実際にはスレ単位でそろう
ことが多いことになるのかも..
その辺は運用してみてのお楽しみですね。

>808

流出スクリプトのことでしたら bbs.cgiスレかなんかにあったような..

>813

お疲れ様です。

816 :375 ◆MsUYMX0E :01/08/31 14:07 ID:r.U1h5gk
あうー 名前入れ忘れた..

817 : :01/08/31 14:30 ID:puLN.ZKA
>>813
http://corn.2ch.net/test/read.cgi?bbs=php&key=998794497

818 :デフォルトの名無しさん :01/08/31 16:26 ID:kyBsuD1o
★【2ちゃんねるが売っている!】★
http://teri.2ch.net/test/read.cgi?bbs=accuse&key=999242413&ls=50

819 :266 :01/08/31 16:47 ID:GDt82F3U
>>818
おいおいおい。マジですか・・・。

820 :名無しさん@お腹いっぱい。 :01/08/31 16:49 ID:zxqXHD12

買え
http://www.bidders.co.jp/item/3423025

821 :デフォルトの名無しさん :01/08/31 17:02 ID:5QwRJ5aY
にちゃんねらーがネタで出品したのに対して、
ひろゆきが悪乗りしたとしか見えん。

822 :デフォルトの名無しさん :01/08/31 17:07 ID:KmOcVo8.
>>821
いや、出品はトップページ更新後に行われている。

823 :デフォルトの名無しさん :01/08/31 17:18 ID:5QwRJ5aY
>822
じゃあ一人で悪のりしてるだけだな。
ネットニュースに取り上げられるだろうから、
良いか悪いかはしらんが宣伝にはなるだろう。

824 :デフォルトの名無しさん :01/08/31 17:57 ID:4V/0.g66
散々騒がしておいて入札取り消し?

誰かに買わせるに当って値段を煽ろうということかしらん?
少なくとも客観的な値札を貼る必要があったという事かな。

しかし、当然予想されたように2ちゃんねらーが荒らしてるな。
入札しちゃったらどうすんだろ。
ま、額が額だから心裡留保で通じるということかしらん?

825 :デフォルトの名無しさん :01/08/31 18:06 ID:KmOcVo8.
早すぎ(w
http://www.watch.impress.co.jp/pc/docs/article/yajiuma/

826 :とり :01/08/31 18:10 ID:ntn9RiFQ
JavaScriptでdat2html
http://fukuoka.cool.ne.jp/dat2html/

827 :デフォルトの名無しさん :01/08/31 18:11 ID:5QwRJ5aY
>825
ニュー速には相当数のメディア関係者がいるからね。
2ch全体は言うに及ばず。

828 :266 :01/08/31 18:13 ID:GDt82F3U
う〜ん。製作中止にした方がいいのかな?

829 :デフォルトの名無しさん :01/08/31 18:15 ID:Yw7AvM2I
無駄にはならないのでは・・・。

2ch自体が9月中旬まで存続する事は
逆に決まったと見ていい訳だし。

830 :266 :01/08/31 18:18 ID:GDt82F3U
うぃっす。
とりあえず既に7000行ぐらい書いちゃったんで仕上げます(藁

831 :デフォルトの名無しさん :01/08/31 18:28 ID:5QwRJ5aY
つーか何でネタに右往左往されてんの?
気にしないでやることやるべきだと思うが。

832 :266 :01/08/31 18:37 ID:GDt82F3U
>>831
仕事と並行で抱え込んだものだから
やらないで済ませられるなら済ませたいわけで(藁

833 :375 ◆MsUYMX0E :01/08/31 21:41 ID:TyLqNw.M
>266

ここまでできたんだしプロトぐらいまでは世に出しましょうよ!
このまま葬り去られるのは惜しい気がする。

834 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/31 23:05 ID:44wU9PJg
>>808
遅くなって申し訳ない。public_htmlのパーミッションが777じゃなかったために
おかしな動作していた(笑)。
仮設置先はhttp://www.tokyo-nazo.net/~tester/entrance/index2.html
そのうちちゃんと2ch.tokyo-nazo.net立てるけど・・・。

835 :デフォルトの名無しさん :01/08/31 23:42 ID:p6qiJqEM
>>815
さんくす。試してみたが、初期Settingが面倒ですぅ。
挫折... いや、改造版を作った人が優秀なのがいけない。
便利すぎ。でも、万一テスト環境として、NGだといけないので
流出版も拾ってきてあぷしました。
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/2ch-ryu.tgz
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/2ch-ryu.lzh

>>834
public_htmlが777ってやっぱり変だよね。
でも、どのサンプルみてもそういう構成だった。

>>832
漏れなんか、会社で寝てるもんね(藁。

836 :デフォルトの名無しさん :01/08/31 23:46 ID:p6qiJqEM
url間違ってました。
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/files/2ch-ryu.tgz
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/files/2ch-ryu.lzh

837 :266 :01/08/31 23:49 ID:GDt82F3U
>>835
在宅PGって案外サボりづらいのよ(藁

今現在ピア間メッセージ通信のテスト中です。
これが終わったらロールアウトです。
しかし眠いので寝ちゃうかも(藁

ところで実際の実験をやるには鯖側に補佐の CGI が必要になりますが
この CGI はどうしましょ?やっぱ俺が書いた方がいいのかな?

838 :デフォルトの名無しさん :01/09/01 00:02 ID:ms.cdiOw
>>837
在宅かぁ。じゃあきついな。会社はいいぞ。
ださちゅーでもなんとか飯食わせてくれるしな
(ぃゃ、ぅそです>my会社の人)

cgiの方は、君は外部I/Fと注意点だけ出してもらえれば良いんでない?
どんなリクエストが来て何を返すか。
余力があればスケルトンを書いてもらえれば助かるけど。
詳細を説明するのが面倒なら、書いた方が楽かもね。
# 好み次第だと思う。

ちなみに、CSV形式なら、データ中に","(セパレータ)が来たときの扱い
も教えてくれるといいかも。

839 :266 :01/09/01 00:15 ID:YgH.PB8M
仕様は単純。
作る CGI は一つのみで、鯖上のデータを整理して渡してくれる奴。
CGI の名前を p2p.cgi とすると、次のような動作をする。
出力は常にリストで、各行は \n によって区切られる。
行内の項目デリミタは半角空白。

●CGI の入出力仕様
呼び出しの方法:http://server.2ch.net/p2p.cgi?list=peer&board=XXXX
出力リストの行:ピアのIP port

特定板の住人のアドレスを収集するのに使う。
とりあえずは過去1時間以内にアクセスしてきた P2Pcache ユーザーの中から
上限100ユーザーまでで無作為抽出かな?


呼び出しの方法:http://server.2ch.net/p2p.cgi?list=thread&board=XXXX&page=X
出力リストの行:スレID スレの名前

特定板の特定ページ内のスレ一覧の情報を収集するのに使う。
スレIDは個々のスレに永続的に固有のものでなくてはならない。

840 :266 :01/09/01 00:15 ID:YgH.PB8M
呼び出しの方法:http://server.2ch.net/p2p.cgi?list=resinfo&board=XXXX&thread=XXXX&from=XX&to=XX&last=XX&nofirst=true
出力リストの行:レスID サイズ MD5

特定スレに属するレスの情報を収集するのに使う。
last が 0 以外だったら from と to が無視される。
レスID は 1 〜 1000 の通し番号であぼーんによっても動かないものであること。
サイズと MD5 は今はダミーでOK。


呼び出しの方法:http://server.2ch.net/p2p.cgi?list=resdata&board=XXXX&thread=XXXX&id=111,222,333,...,NNN
出力リストの行:レスID 内容

レスの内容の収集用。キャッシュになかったレスの差分更新用に使う。
id=の後ろに並ぶのはカンマで区切ったレスID。
レスの内容は更に次のフォーマットになる。

レスID<発言者名<メアド<タイムスタンプ<本文

デリミタが空白じゃなくて < になってるのに注意。
本文中に < が現れるのは構わない。


●その他
これとは別に板一覧も必要。これはCGI じゃなくてもいい。

呼び出しの方法:http://www.2ch.net/boardlist.dat
出力リストの行:板名 サーバのホスト名 ディレクトリ名


こんなところ。

841 :266 :01/09/01 00:17 ID:YgH.PB8M
補足。
ピアのIPは普通に文字列で表現すればOK。
数値は MD5 以外は全部十進表記。MD5 だけは16進表記。

842 :375 ◆MsUYMX0E :01/09/01 00:27 ID:kNVOmjGE
>266

えっと、個人的にはやはり他のcgiとの統一の意味でも
board -> bbs
thread ->key のほうが望ましいと思うのですが.. 如何でしょう?

あと↑で発言者名とメルアドに < がはいるとまずいことになりません?
これってbbs.cgiで排除されるんでしたっけ?

843 :デフォルトの名無しさん :01/09/01 00:38 ID:ms.cdiOw
board=XXXのXは、板の名前 or ID(数字) or urlに来るID(アルファべっと)?
本文中のデミリタは、<>にしません? 現行では<>はタグブロックで
本文中には現れない仕様のようなので。

844 :266 :01/09/01 00:45 ID:YgH.PB8M
>>842
内部実装では板は board でスレは thread に統一しちゃったんで
鯖とのインタラクション部分だけ合わせても利はないと思います。

>>843
375 さんのお話とも被ってきますが
本文中のデリミタについてはおっしゃる通り <> で一本化しましょう。

845 :<>375 ◆MsUYMX0E :01/09/01 00:47 ID:kNVOmjGE
>844

了解です。では今回はこれで行きましょう。
デリミタも2Byteなのがちょっときになりますけど
<>でいいとおもいます。上でうまく排除されていれば...

846 :375 ◆MsUYMX0E :01/09/01 00:48 ID:kNVOmjGE
ってだめだった..

847 :266 :01/09/01 00:53 ID:YgH.PB8M
>>846
<> になってるから大丈夫ですよ(藁

848 :266 :01/09/01 00:53 ID:YgH.PB8M
&lt; &gt; の間違い。

849 :デフォルトの名無しさん :01/09/01 00:54 ID:ms.cdiOw
>>845
dat上では&lt;&gt;となるようです。<>
<は、<b>がdat上に使われています。>現行仕様
と、cgiですが、375さんはperl好きですか?(藁。
もしくは、誰か詳しそうな人ご存じですか?
誰もいなければtryしますが、ほとんどperlさわった
ことないんで危険な香りが(w。

850 :デフォルトの名無しさん :01/09/01 00:55 ID:5vmmv.Yo
tabじゃだめなのかな?>デリミタ
何かと扱いやすいと思うんだけど。

851 :266 :01/09/01 00:57 ID:YgH.PB8M
俺としては一文字なら何でもいいんですけどね(藁
2文字なのはちょっとイヤ。
でも<>なら現行の 2ch の dat と同じだから
dat からデータを引っ張ってくる際に
あまり手間が掛からない(上手く行けばまんまコピーで終了?)かな、と。

852 :375 ◆MsUYMX0E :01/09/01 00:59 ID:kNVOmjGE
>849

うーん。昔掲示板ぐらいは作ったことあるけど、
datの仕様とかわからないからなぁ..

あと明日ちょっと出かけるので..

一度他のスレで呼びかけてみましょうか?

853 :デフォルトの名無しさん :01/09/01 00:59 ID:ms.cdiOw
>>850
tabは本文中で使用可能なのでうまくないと思われ。
>>849
ちなみに<b>でなくて<br>でした。

854 :デフォルトの名無しさん :01/09/01 01:03 ID:ms.cdiOw
>>852
そうですね。呼びかけてお願いします。
もとがだめだと、改修も大変でしょうから。
だめなら一緒に推敲しあってやりましょう :-)

855 :266 :01/09/01 01:03 ID:YgH.PB8M
>>853
いや、本文中では何を使ってもいいんですよ。
タイムスタンプの直後のデリミタ以後は全部ひとかたまりで扱いますから。
なので、本文に至るまで(=ハンドルとかメアドとか)で使用されない
ことが保証されている文字ならなんでもいいわけです。

856 :デフォルトの名無しさん :01/09/01 01:08 ID:ms.cdiOw
それとすんません。私も明日(9/1)と明後日の午前は
知人に強制連行されますので不在です。_(_ _)_
許してくれ。。>266
君の栄光は忘れない。(^-°)♭

857 :デフォルトの名無しさん :01/09/01 01:12 ID:ms.cdiOw
>>855
なるほど。そうか。dat直読みが頭にあったので
ごっちゃにしていた。datは、投稿者 めあど 日時 本文の
順だったので。
ちなみに、board=XXのXは数字? それとも板の名前直ですか?

858 :266 :01/09/01 01:13 ID:YgH.PB8M
>>856
できあがって&うまく動いて&キャッシュヒットしまくった
時にだけ栄光があるんで先立つ賛辞は謹んで辞退いたします(藁
実際、キャッシュヒット率や利用ユーザー数が少ないと
いまいち効果が出ないだろうからなぁ。
仮に P2Pcache 利用者が 2ch ユーザーの6割で
キャッシュヒットが100%だとしても負荷は6割しか減らないわけで。
アルゴリズムのチューニングや普及活動には時間が掛かりそう。

859 :266 :01/09/01 01:15 ID:YgH.PB8M
>>857
XXXは板の名前直ですね。だからディレクトリ名と同じ。
ただものによっちゃ板がサブディレクトリのサブディレクトリとかに
なってる場合もあるんで空白を含まない任意の ASCII 文字列、
ぐらいで考えてます。

860 :375 ◆MsUYMX0E :01/09/01 01:19 ID:kNVOmjGE
混乱の中申し訳ありませんが、P2P Cache制作スレからperl CGI作者の募集です。

仕様は単純。
作る CGI は一つのみで、鯖上のデータを整理して渡してくれる奴。
CGI の名前を p2p.cgi とすると、次のような動作をする。
出力は常にリストで、各行は \n によって区切られる。
行内の項目デリミタは半角空白。

●CGI の入出力仕様
1.Peer取得

呼び出しの方法:http://server.2ch.net/p2p.cgi?list=peer&board=XXXX
出力リストの行:ピアのIP port

特定板の住人のアドレスを収集するのに使う。
とりあえずは過去1時間以内にアクセスしてきた P2Pcache ユーザーの中から
上限100ユーザーまでで無作為抽出かな?

例:

http://server.2ch.net/p2p.cgi?list=peer&board=tech

出力>
HTTP/1.1 200 OK
Date:Fri,31 Aug 2001 11:11:11 GMT
Content-type: text/plain

123.177.41.17 83
153.177.41.17 82
113.177.41.17 87
163.177.41.17:81
113.177.41.17:88
173.177.41.17:87



2.スレの一覧の取得
呼び出しの方法:http://server.2ch.net/p2p.cgi?list=thread&board=XXXX&page=X
出力リストの行:スレID スレの名前

特定板の特定ページ内のスレ一覧の情報を収集するのに使う。
スレIDは個々のスレに永続的に固有のものでなくてはならない。

例:
http://server.2ch.net/p2p.cgi?list=thread&board=tech&page=1

出力>
HTTP/1.1 200 OK
Date:Fri,31 Aug 2001 11:11:11 GMT
Content-type: text/plain

99034727
98013467
97043231
94801673

↑上位XXスレを出力(テスト用なら10スレ程度?)

(つづく)

861 :375 ◆MsUYMX0E :01/09/01 01:20 ID:kNVOmjGE
3.あるスレに対するレスのサイズとハッシュを取得
呼び出しの方法:http://server.2ch.net/p2p.cgi?list=resinfo&board=XXXX&thread=XXXX&from=XX&to=XX&last=XX&nofirst=true
出力リストの行:レスID サイズ MD5

特定スレに属するレスの情報を収集するのに使う。
last が 0 以外だったら from と to が無視される。
レスID は 1 〜 1000 の通し番号であぼーんによっても動かないものであること。
サイズと MD5 は今はダミーでOK。

例:
http://server.2ch.net/p2p.cgi?list=99074284&board=tech&page=1

出力>
HTTP/1.1 200 OK
Date:Fri,31 Aug 2001 11:11:11 GMT
Content-type: text/plain


1 124 594f803b380a41396ed63dca39503542
2 142 74b87337454200d4d33f80c4663dc5e5
3 513 0b4e7a0e5fe84ad35fb5f95b9ceeac79
4 235 11649b4394d09e4aba132ad49bd1e7db
5 0 0
6 234 86c9cf00e87196f0207f3590d5fcffd3


実例を入れるとこんな感じですかね? 確認になりますが。

862 :375 ◆MsUYMX0E :01/09/01 01:21 ID:kNVOmjGE
えっと、上では list=99074284 のレス5はあぼーんされてると仮定します
この辺の問題も決めないといけないのか,,,

863 :266 :01/09/01 01:25 ID:YgH.PB8M
>>860 >>861
ピア一覧の後半でポートとアドレスのデリミタがコロンになってます^^;
スレ一覧にはスレの名前も入れてください。
MD5 の方は16進ではあり得ない文字(Xとか)を32文字(これが重要)並べてください。
それ以外は問題なしです:)

864 :266 :01/09/01 01:26 ID:YgH.PB8M
>>863
MD5 の話はあぼーんの場合です。

865 :デフォルトの名無しさん :01/09/01 01:28 ID:noHCEp/A
>>858
キャッシュヒット率はレス単位なので頻繁に書込みの
あるところでは効果があると思う。更新のあまりないスレは
proxyとかミラーに利があると思うがそれは別スレで
進んでいるから併用が最強かも。理屈上は。
利用者については、proxyなどにくらべ、落ちていても良い分
手軽でしょう。少なくとも自分で使えば自分の良く見るスレは
概ね決まっているからそれなりには良いと思う。
負荷低減の為の強制or普及させるということについては課題だが、
cgi含むプロトができて効果が認められれば、誰かが更新するに
期待するしかないでしょう。少なくともやって損なものではないと思う。
これ程の規模向けで実験させてもらえるチャンスもそうそうないだろうし。

866 :あぼーん :あぼーん
あぼーん

867 :コピペテンプレート :01/09/01 01:32 ID:kNVOmjGE
混乱の中申し訳ありませんが、P2P Cache制作スレからperl CGI作者の募集です。

仕様は単純。
作る CGI は一つのみで、鯖上のデータを整理して渡してくれる奴。
CGI の名前を p2p.cgi とすると、次のような動作をする。
出力は常にリストで、各行は \n によって区切られる。
行内の項目デリミタは半角空白。

●CGI の入出力仕様
1.Peer取得
呼び出しの方法:http://server.2ch.net/p2p.cgi?list=peer&board=XXXX
出力リストの行:ピアのIP port

特定板の住人のアドレスを収集するのに使う。
とりあえずは過去1時間以内にアクセスしてきた P2Pcache ユーザーの中から
上限100ユーザーまでで無作為抽出かな?

例:

http://server.2ch.net/p2p.cgi?list=peer&board=tech

出力>
HTTP/1.1 200 OK
Date:Fri,31 Aug 2001 11:11:11 GMT
Content-type: text/plain


123.177.41.17 83
153.177.41.17 82
113.177.41.17 87
163.177.41.17 81
113.177.41.17 84
173.177.41.17 87

2.スレの一覧の取得
呼び出しの方法:http://server.2ch.net/p2p.cgi?list=thread&board=XXXX&page=X
出力リストの行:スレID スレの名前

特定板の特定ページ内のスレ一覧の情報を収集するのに使う。
スレIDは個々のスレに永続的に固有のものでなくてはならない。

例:
http://server.2ch.net/p2p.cgi?list=thread&board=tech&page=1

出力>
HTTP/1.1 200 OK
Date:Fri,31 Aug 2001 11:11:11 GMT
Content-type: text/plain


99034727 2chのような掲示板システムってP2Pで
98013467 ( ゚Д゚)ノ Delギコ猫のプログラミング相談室
97043231 最小行で逝ってみる。
94801673 ABAP:R/3統一スレッド
↑上位XXスレを出力(テスト用なら10スレ程度?)

868 :つづき :01/09/01 01:33 ID:kNVOmjGE
3.あるスレに対するレスのサイズとハッシュを取得
呼び出しの方法:http://server.2ch.net/p2p.cgi?list=resinfo&board=XXXX&thread=XXXX&from=XX&to=XX&last=XX&nofirst=true
出力リストの行:レスID サイズ MD5

特定スレに属するレスの情報を収集するのに使う。
last が 0 以外だったら from と to が無視される。
レスID は 1 〜 1000 の通し番号であぼーんによっても動かないものであること。
サイズと MD5 は今はダミーでOK。

例:
http://server.2ch.net/p2p.cgi?list=99074284&board=tech&page=1

出力>
HTTP/1.1 200 OK
Date:Fri,31 Aug 2001 11:11:11 GMT
Content-type: text/plain

1 124 594f803b380a41396ed63dca39503542
2 142 74b87337454200d4d33f80c4663dc5e5
3 513 0b4e7a0e5fe84ad35fb5f95b9ceeac79
4 235 11649b4394d09e4aba132ad49bd1e7db
5 0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX (←32桁)
6 234 86c9cf00e87196f0207f3590d5fcffd3

以上です。ご協力いただける方がいらっしゃったら
2chのような掲示板システムってP2Pで
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=990334284

までよろしくお願いしますです。

869 :あぼーん :あぼーん
あぼーん

870 :あぼーん :あぼーん
あぼーん

871 :375 ◆MsUYMX0E :01/09/01 01:40 ID:kNVOmjGE
すみません。明日早いので今日はねます。

でもAirH''買ったので今日からいつでも2ちゃんねる♪(←dame確定)

872 :266 :01/09/01 01:43 ID:YgH.PB8M
>>871
おやすみなさい。
俺はこのまま朝までテストしてロールアウトに命を掛けてみます(藁

873 :あぼーん :あぼーん
あぼーん

874 :デフォルトの名無しさん :01/09/01 01:56 ID:noHCEp/A
レコード仕様は↓みたいで良い?
2chのdatを全部もってるわけではないから
違う可能性もあるけど。。。

--- peer ip port一覧(IN)
210.110.8.5 5089
210.110.80.5 6180
202.120.80.5 4823
---
Format: IP PORT\n
※一覧は板単位で持つ。
そのまま出力できる形式。

--- 板一覧
mine<>掲示板
mine2<>掲示板2
mine3<>掲示板3
---
Format: URLのアルファベット<>板名\n

--- スレ一覧
999276102<>bbbbbbb (1)
999276080<>tesate (1)
999189425<>sure1 (5)
---
Format: ID<>スレ名\n
※フロート順は一番上が上になる。

--- 本文等
名無しさん@お腹いっぱい。<>age<>2001/08/31(金) 01:37 ID:4QvmWmGk<> aaaa <br> <>sure1
名無しさん@お腹いっぱい。<><>2001/08/31(金) 01:37 ID:4QvmWmGk<> ates <br> <>
<>test<><>2001/09/01(土) 00:49 ID:QYRD10pw<> test <br> <>
名無しさん@お腹いっぱい。<>sage<>2001/09/01(土) 00:56 ID:???<> aaaa <br> <br> <br> <br> <>
名無しさん@お腹いっぱい。<><>2001/09/01(土) 00:57 ID:QYRD10pw<> 1 2 3 <br> <>
---
Format: 投稿者名<>E-mail<>日時<>本文<>(一番上だけスレ名であとはなし)\n

875 :あぼーん :あぼーん
あぼーん

876 :デフォルトの名無しさん :01/09/01 01:58 ID:noHCEp/A
>>874
peer一覧の(IN)は無視してください。。

877 :あぼーん :あぼーん
あぼーん

878 :あぼーん :あぼーん
あぼーん

879 :デフォルトの名無しさん :01/09/01 02:02 ID:noHCEp/A
おやしみなさい

880 :266 :01/09/01 02:29 ID:YgH.PB8M
>>874
できれば本文中のデリミタ以外のデリミタは半角空白に統一してください。
そっちの方が処理が楽なんで。

881 :あぼーん :あぼーん
あぼーん

882 :デフォルトの名無しさん :01/09/01 09:09 ID:UgaS1OGQ
惨めな荒らしを晒しあげ

883 :デフォルトの名無しさん :01/09/01 09:26 ID:qzXlSnVI
誰か統一仕様書をHPにアップせーよ

884 :デフォルトの名無しさん :01/09/01 10:39 ID:7wgA9zlI
>>883
あぷしました。
http://www.geocities.co.jp/SiliconValley-Sunnyvale/1506/files/P2Pcgi-spec.txt

885 :デフォルトの名無しさん :01/09/01 10:46 ID:7wgA9zlI
>>880
<>を空白に変える関係上、
最初の半角スペース1つ以外のスペースは板名として認識される。
最初の半角スペース1つ以外のスペースはスレ名として認識される。
としました。違ってたら、直してPlease。
帰ってきたら自分でもやりますが。

886 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 12:05 ID:nLpICBgk
えーと、テスト環境に関して提案があります。
現在、あちこちに避難所が出来ていますが、特にラウンジの避難所は数が多く、
実に六ヶ所もあります。
そこで、このスレの皆さんがOKであれば、ラウンジ避難所の管理者に声をかけ、
今回のプロジェクトの実験を手伝ってもらおうかと思います。
どうでしょ?

887 :デフォルトの名無しさん :01/09/01 12:55 ID:4QXs4r1I
管理者の同意を取り付ければ問題ないんじゃないでしょうかねぇ。
別にラウンジ避難所に限る必要もないと思いますが・・・。

888 : :01/09/01 13:10 ID:9DvFkqOE
「批判要望板」には、2ちゃんねるの運営や存続に危機を抱いている
ユーザがおおそうですので、テストに協力的だと思いますよ。

889 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 13:30 ID:nLpICBgk
>>887
最終的には他の板に広げるとして、初めをラウンジに絞ったのはラウンジャーが
お祭り好きで新し物好きの性格の為、P2P面白そう、やるやる、と言いそうだと
いうこと。
また2chの看板らしい?のでここがP2Pのテスト場になればP2Pに弾みがつくこと。
万が一失敗してもそれをネタに笑い飛ばせそうだということ(深刻度が他の板と
違う)。
避難所の数が多いので、協力してくれる人が多そうだということ。
等が挙げられます。
>>888
批判要望板はテストにするには深刻であり、またアンチも多いため、協力者も多
ければ妨害者も多いことが考えられる、また避難所が存在せず、既存環境が利用
できないという問題があるので今回はラウンジをターゲットにしたいのです。

とりあえず、避難所に声をかけてきます。

890 :266 :01/09/01 13:45 ID:YgH.PB8M
スマソ。テスト中に爆睡してしまいました・・・。
BCBのソケットコンポーネント使ってたんすけどこれどうもP2Pに合わないみたい。
というわけで急遽ソケットクラス書いて改造中です。

>>886
俺の方は異論ありません。

891 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 14:25 ID:nLpICBgk
とりあえず参加表明してくれたところがあったので報告。
http://61.121.247.239/~kikaku/post/test/read.cgi?bbs=entrance&key=999319257
あとはうちのところと、P2P有志でテスト環境の問題はクリアできたんじゃない
かなと思う。
引き続き参加応募を募ってみます。

892 :266 :01/09/01 14:28 ID:YgH.PB8M
おお〜。
2ちゃんも捨てたもんじゃありませんね。

ソケットクラス書き上げて今バグ取り中です。

893 : :01/09/01 14:33 ID:9DvFkqOE
「GnutellaNetを成長させる」
http://www.jnutella.org/docs/gnutella/scalinggnutellanet.html
>絶対に実装してはならない機能はチャットである。狂気の惨状にしては
>ならない:チャットのパケットを送ってはならない。

繰り返しになりますが、書き込みの内容をパケットにいれてリレーする
のは、確かに匿名性が保てるかもしれませんが、ネットワークが破綻し
てしまいますので、止めたほうがよいでしょう。

894 :266 :01/09/01 14:43 ID:YgH.PB8M
>>893
今の仕様だとリレーしていますね(汗
P2Pcache の場合にはリレーの中継点にも
キャッシュさせていくという活用方法がありえますが
やっぱやめておいた方がいいですかね?

895 :デフォルトの名無しさん :01/09/01 15:44 ID:y4YlCE82
p2p.cgi をほぼ書き終えました。

peer, thread の一覧はあらかじめテキストファイルに書き出してある
ものを使うということで良いんでしょうか。

あとそのファイルのパスを ${board}/peer.list , ${board}/server.list
と決め打ちしているんですが、実際どういうディレクトリ構造になってい
るんでしょう?

896 :デフォルトの名無しさん :01/09/01 15:44 ID:klcAtpeo
試してみようよ。 >>894
 ダメなら やっぱりダメだったか でいいんじゃないの?

897 : :01/09/01 15:47 ID:9DvFkqOE
>>893
「だめだと思う」ではエンジニアっぽくないので、

プログラムを作って、実際にパケットがあふれまくるところを、シミュレー
ションしてみたらいいと思う。っていうか、俺、やってみる。

898 :893 :01/09/01 15:48 ID:9DvFkqOE
あ、893=897です。

899 :266 :01/09/01 15:52 ID:YgH.PB8M
>>895
ご苦労さんです。
サーバー側でのデータ保存形態は一切問いません。
p2p.cgi 経由で取得できるものができればいいので。
peer の一覧は実験時には実験参加者の IP を
あらかじめリストアップして手作業で追加するか、
あるいは p2p.cgi にピア登録機能を追加して
P2Pcache に登録リクエストを送らせるかですね。
後者の場合またお手数をおかけすることになりますがよろしくお願いします。
まずは前者の方で考えたいと思いますけど、
参加してくれる皆さんもそれでよろしいですか?
thread の一覧は板のログから生成するのが妥当だと思います。

900 :895 :01/09/01 16:01 ID:y4YlCE82
# p2p.cgi

ひとまず終えました。どこか up する場所があるんでしょうか。

901 :266 :01/09/01 16:07 ID:YgH.PB8M
>>900
鯖を提供してくださってる方のところへアプしてください。
今スレを見ていらっしゃいますか?>鯖提供者の方

902 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 16:27 ID:nLpICBgk
すまん、外出していた。OK。
メールでください。サーバに上げます。

903 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 16:29 ID:nLpICBgk
あ、ftp封鎖しているのでhttpで構わないよね?

904 :266 :01/09/01 16:32 ID:YgH.PB8M
>>903
えと、それはこっちの話ですか?
鯖は HTTP 経由でしか叩かないんで大丈夫っす。

905 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 16:32 ID:nLpICBgk
>>904
アップする場所です。

906 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 16:55 ID:nLpICBgk
5時からネット不能な場所に外出します。
テスト参加は帰ってきてからなので遅れます。
とりあえずp2p.cgiのアップだけでもやっときたいですね。

907 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 17:01 ID:nLpICBgk
うう、時間切れっぽい。
今から外出しますので、アップできるとしても夜になります。

908 :デフォルトの名無しさん :01/09/01 17:05 ID:twr9sQ6c
ftp://210.170.170.118/incoming/
は使っちゃいかんの?

909 :895 :01/09/01 17:49 ID:y4YlCE82
すいません。横になったら寝てしまいました。

908 の FTP はどこのディレクトリに入れたらいいんでしょう。

910 :デフォルトの名無しさん :01/09/01 17:53 ID:twr9sQ6c
>>909
p2pってディレクトリ掘っちゃうとか…

911 :895 :01/09/01 18:12 ID:y4YlCE82
p2p ディレクトリができていたので up しときました。

912 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 22:02 ID:nLpICBgk
こっちはいつでも入れられる状態になりました。
使い方とディレクトリ指定してくれれば即流しこみます。

913 :266 :01/09/01 22:10 ID:YgH.PB8M
>>912
ども。
CGI の設置場所について今のところ特に指定はありません。
今は //www.tokyo-nazo.net/~tester/entrance/index2.html に避難所があるようなので
//www.tokyo-nazo.net/~tester/entrance/p2p.cgi か
//www.tokyo-nazo.net/~tester/p2p.cgi ぐらいで設置をお願いします。
設置していただいたらこちらで一通りのテストを行った上で
結果をあらためてここで報告させてもらいます。

914 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 22:18 ID:nLpICBgk
>>913
すまーんm(__)m
//www.tokyo-nazo.net/~tester/entrance/p2p.cgi
置いたがinternal server errorが発生するんで、ちょっと調べます。
1行目の!usr/bin/perlは変更したし・・・なんだろ・・・

915 :266 :01/09/01 22:24 ID:YgH.PB8M
>>914
こっちも色々と書き換えてるところなんで
急いでいただかなくても大丈夫っす(笑
BCBのソケットを全廃してソケットAPI直叩きに変更中です。

916 :デフォルトの名無しさん :01/09/01 22:42 ID:LzBeC2l.
おまえら、みんな 光り輝いてるよ!
まぶしーゼ!

917 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/01 22:47 ID:nLpICBgk
MD5ライブラリがなかったせいでした(爆)。
この板の住人には釈迦に説法ですが、私と同じはまりかたをしたひとのために。
//search.cpan.org/search?dist=Digest-MD5
から落としてgzip -dc Digest-MD5-2.15.tar.gz | tar xvf -
で解凍して、perl Makefile.PLしてmakeしてmake installする。

Error: Unkown list value '' at /・・・・・/p2p.cgi line 43.
が出るのはソース見る限り引数がないからなので、たぶん正しい動作。
というわけで、たぶん環境できましたのでよろしくお願いします

918 :266 :01/09/01 23:00 ID:YgH.PB8M
CGI の設置を確認しました:)
ソースをちょっと見たところではダミーデータの生成はなしですね。
これだと bbs.cgi の変更と連動しないとテストできないんで
もう一がんばりお願いできませんか^^;?>どなたか

919 :895 :01/09/01 23:10 ID:y4YlCE82
とりあえずローカルでテストしたファイル peer.list , thread.list を
up しときます。

920 :266 :01/09/01 23:13 ID:YgH.PB8M
>>919
お手間とらせちゃってすいませんm(_ _)m

921 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 00:11 ID:UbqfbXOg
peer.lstには自分のip(210.232.194.104)追加すればいいのかな?
thread.lstは了解。
それぞれp2p.cgiと同じディレクトリでOKだよね?

922 :895 :01/09/02 00:35 ID:070S2IqE
md5 する時に余分な改行含んでたので chomp しました。> p2p-0.02.cgi
another さんの読んでて気づきました。thx

次のように配置すればうまくいくはず。

* p2p.cgi
+ tech
- peer.list
- thread.list
+ dat
- sample.dat
+ unix
...

923 :895 :01/09/02 00:44 ID:070S2IqE
空白が消えとる。

ディレクトリは read.cgi と同様 test 以下に置くことになるとすれば、
../${board}/peer.list の方が良いのかな。

924 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 00:52 ID:UbqfbXOg
ちょっとディレクトリ構成がよくわからんけど、
とりあえず、
//www.tokyo-nazo.net/~tester/p2p.cgi
//www.tokyo-nazo.net/~tester/entrance/peer.list
//www.tokyo-nazo.net/~tester/entrance/thread.list
//www.tokyo-nazo.net/~tester/entrance/dat/(thread.listにあるno.dat)
という配置で配置してみたのでよろしく。

925 :266 :01/09/02 00:55 ID:zR1.Ai4.
>>923
P2Pcache.exe の方での対応は簡単なんで
場所は一定法則さえあれば適当に決めて下さってOKです。

以下リリースが遅れてることのいいわけ(藁
いや、一応手元でキャッシュは成功しました。
ただその時、BCBのコンポーネントのソケット周りが
P2P向きでないことがはっきりしちゃったんで書き換えてるわけです。
ついでに、そろそろ仕事に復帰しなくちゃいけないんで
引継を頼みやすいようにコードのBCB依存部分をバサバサ削ってるところです。
てなわけでリリースはあとちょっと待ってやってください(懇願)
その間に bbs.cgi の改造などが終わってるとナイスなんで
そこら辺もできればお願いします。

926 :895 :01/09/02 01:05 ID:070S2IqE
それで OK です。 >>924
うまく動作しているかな。

927 :266 :01/09/02 01:09 ID:zR1.Ai4.
これ、避難先の板名は何になってるんでしょ?
板名をパラメータに与えないと正常動作しませんよね?

928 :895 :01/09/02 01:11 ID:070S2IqE
500 になってるなぁ。何でだろ。

929 :895 :01/09/02 01:17 ID:070S2IqE
p2p.cgi?list=peer&board=entrance
で ./entrance/peer.list が表示されるはず

500 ということは use しているモジュールが無いか、パミッションだろうか。

930 :っlll@p8ppuoppp :01/09/02 01:24 ID:AApa0kh.


★★★援助交際学園★★★


本気でセックスフレンドを探してる女の子


お金に困っている女子中高校生


男性登録者も募集

http://000.zive.net/e.html
(援助交際学園)

931 : :01/09/02 01:45 ID:K265WADA
こんなことも言われています。さっさと2ch.netに依存しないハイブリッドP2P
を作って、株屋にさよならししてください。

267 名前:名無しさんの声 投稿日:01/09/01 22:49 ID:ZrO3pKbk
だから2ちゃんの実質的な運営者はひろゆきじゃなくて、切込なんだって。
法人化は切込の長年の悲願だろ。やつは2ちゃんに金は出さないけど、
かなり時間を投資してるみたいだし。

転送量を口実に危機をあおって、金儲けにはやばげな板をばっさり切る。
奴が書いた筋書きだろ。法人化したら客から文句を言われるような板は、
あらかじめ切っといたほうがいいもんな。

転送量が1月700万ってのだって、かなり膨らした数字。それにこれは
Big-Serverが外部に売るための定価であって、夜勤さんが自腹切ってる
原価(ハリケーンに払う分)じゃない。ここのとこがわざとぼやかされ
てるんで、勘違いしている人が多いんだけど。

ここの「サーバー変えたらいかんの?」ってスレで詳しい人たちが
試算してたけど、自前でサーバーを立てれば月200万円ちょっと、人件費
入れたって350万もあればお釣りがくるみたいだし。だから、法人化して、
スポンサーをつけたりして、採算が取れる勝算があるんだろ。

切込隊長が、儲かる見込みがなくて、法人化を進めるとは考えられん。
だから、大方の予想を裏切って商用化した2ちゃんはそれなりにやって
けるだろうよ。

可哀想なのは危機を乗り切ろうとして、しゃかりきになってプログラムを
改良したうに版とかの人たちだよな。資本家の切込に、見事に剰余価値を
掠め取られたってわけだ。

932 :266 :01/09/02 08:17 ID:zR1.Ai4.
っつーわけでプロトタイプできました。
まる一週間も時間掛かっちまった。
手元の実験ではピア間キャッシュは上手くいってますね。
ただこれ、色々な面でチューニングを施さないと駄目だと思います。
マシン1台内での通信でも1秒程度の余裕を見ないと
ヒットしたデータの回収が間に合ってない。
1メッセージごとにソケット作るという
強烈に無駄なことやってるのがでかいんでしょうけど・・・。
なんにしても次は実地テストですね。
とりあえず今から寝ます・・・。

933 :デフォルトの名無しさん :01/09/02 09:49 ID:RdUxEO1w
>>931
氏ね

934 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 11:02 ID:UbqfbXOg
やっちまった・・・・
#!/usr/bin/perlを#!usr/bin/perlと書いてた(泣)
ちゃんと動いたよ。すまん・・・
http://www.tokyo-nazo.net/~tester/p2p.cgi?list=peer&board=entrance

935 :895 :01/09/02 11:33 ID:070S2IqE
#! /usr/bin/env/ perl

ていうふうに env 使うと動かないんすかね?
今までこれで解決できなかったことが無かったので、
いつもこうしてるんですけど。

936 :デフォルトの名無しさん :01/09/02 11:57 ID:Hrm5p/s6
>>933 突込みどころが間違ってるよカコワルイ

937 :デフォルトの名無しさん :01/09/02 12:29 ID:Do9Cr8zA
粛々と進めるだけと思われ。 一々流言に乗らないように。

オークションネタは、そのための教訓を与えるためだったか?(深読みすぎ)

938 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 12:30 ID:UbqfbXOg
#! /usr/bin/env/ perlだとInternal Server Errorになるみたい。
うちのサーバがLaserLinuxだったりするので何が起こるやら(笑)。

939 :266 :01/09/02 13:57 ID:zR1.Ai4.
今起きました。早速ですが、次の呼び出しは

http://www.tokyo-nazo.net/~tester/p2p.cgi?list=thread&board=entrance&page=0
http://www.tokyo-nazo.net/~tester/p2p.cgi?list=resinfo&board=entrance&thread=999271249&from=1&to=5

うまくいきましたが、次の呼び出しでこけます。

http://www.tokyo-nazo.net/~tester/p2p.cgi?list=resdata&board=entrance&thread=999271249&from=1&to=5

原因を調べていただけないでしょうか?
今から実地テストの準備を開始します。
作業内容はダミーサーバーのディセーブルと動作チェックです。
あと、ついでに peer 追加機能も片付けようと思います。

http://www.tokyo-nazo.net/~tester/peer.cgi?board=entrance&port=XX

この呼び出しで、呼び出し元のIPとパラメータ中の port を
peer.list に追加する CGI を用意していただけないでしょうか?
よろしくお願いします。

940 :266 :01/09/02 13:59 ID:zR1.Ai4.
間違った(泣

http://www.tokyo-nazo.net/~tester/p2p.cgi?list=resdata&board=entrance&thread=999271249&id=1,2,3,4,5

この呼び出しでこけます。

941 :895 :01/09/02 14:50 ID:070S2IqE
peer を追加する方は分かりました。
resdata っていうのは何を返したら良いんでしょう。
dat の n 行そのままでいいんでしょうか。
あと、id というのは n 行目に対応していることかな。

942 :266 :01/09/02 15:16 ID:zR1.Ai4.
>>941
IDはレスの通し番号でOKです。
次の行構成でリストを返すようにしてください。

レスID レス内容

レス内容は dat の行まんま引き抜きでOKです。
よろしくお願いします。

943 :895 :01/09/02 15:55 ID:070S2IqE
ftp://210.170.170.118/incoming/p2p/p2p-0.03.cgi
を up しときました。

944 :266 :01/09/02 16:02 ID:zR1.Ai4.
スマソ。
レスタイトルとか文字列は SJIS で統一していただけませんか(^^;?

945 :895 :01/09/02 16:21 ID:070S2IqE
p2p.cgi?list=thread&board=xxxx&page=1
で返されるやつですか?
それなら、thread.list にあるファイルを SJIS に変換すれば直りますね。
指定された page から行番号に直して行をそのまま返しているので。
thread.list を up しとこかな。

946 :266 :01/09/02 16:45 ID:zR1.Ai4.
>>945
はい、それです。よろしくお願いします。

947 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 19:41 ID:UbqfbXOg
>>940
resinfoじゃなくてresdata?
エラーはperlの
die qq|Unkown list value '$arg{list}'|
でこけてるみたいだけど・・・
ちと新しいソース入れてみます。

948 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 19:51 ID:UbqfbXOg
>>947
新cgi導入して動いています。
ついでにSJISにしました。

949 :895 :01/09/02 20:12 ID:070S2IqE
そのp2p-0.03.cgi.1 で peer 登録と resdata に対応したのに加えて、
peer.list と thread.list が無い時にそれらを自動的に生成するようにしました。
名前変えたりして試してみて下さい。

950 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 20:16 ID:UbqfbXOg
んじゃp2p-0.03.cgi.1落としてpeer.listとthread.list削除してみます。
・・・アップ終わりました(を

951 :てんてんdwp@ yankee.tokyo-nazo.net :01/09/02 20:19 ID:UbqfbXOg
一応全部通りますね。
http://www.tokyo-nazo.net/~tester/p2p.cgi?list=resdata&board=entrance&thread=999271249&from=1&to=5
はとおらないけど、OKのはずだし。

952 :266 :01/09/02 20:25 ID:zR1.Ai4.
ども。一通りチェックしました。
すいませんが resdata の出力の頭にレスIDをつけていただけないでしょうか?
それ以外は今のところ問題なく動いてます。ありがとうございます:)
そろそろ和塩の方にアップする準備をしますね。

953 :895 :01/09/02 20:29 ID:070S2IqE
それも対応しといた方がいんかな。

954 :266 :01/09/02 20:34 ID:zR1.Ai4.
>>953
レスIDがついてないとどの行がどのレスなのか分からないんで・・・。
何度もすいませんm(_ _)m

955 :895 :01/09/02 20:36 ID:070S2IqE
あっ、953 は 951 へのもんです。失礼。

>>952 space か何かで区切っておけばよいでしょうか。

956 :266 :01/09/02 20:39 ID:zR1.Ai4.
>>955
はい。行頭にレスIDの整数値文字列をつけておいて、
半角空白のあとにレスの内容を並べてください。

957 :メロン :01/09/02 20:42 ID:CarNkN.k
モジヲ ヘンカンシヨウトスルト IEXPLOREガ ゲンインデ
 エラーガ ハッセイシマシタ。IEPLOREハ シュウリョウシマス。 モンダイガ カイケツシナイバアイハ コンピューターヲ
 サイキドウシテクダサイトデマス サイキドウシテモ モンダイハカイケツシマセン ダレカタスケテ!

958 :デフォルトの名無しさん :01/09/02 20:46 ID:71SdL9Z6
質問。今は、bbs.cgiと同期とれてるんでしたけ?
p2p.cgiとの結合がOKで、それは次ステップと思っていて正しい?

959 :266 :01/09/02 20:52 ID:zR1.Ai4.
>>958
書き込み処理はまだスケルトンしか実装してません。
今から実装して試してみますね。

簡単ながら現時点でのテスト結果報告です。
ひとまず読み込みキャッシュには成功してます。
ローカルホスト内でピアを二つ起動してキャッシュを探るのも大丈夫です。
現時点でも、既に以下の問題点を確認してます。

1)resinfo などをサーバーから取得するのに時間が掛かる。
ピアのキャッシュを調べる前にまずサーバーから
thread や resinfo を取り寄せますがここで半秒程度から待たされます。
今は CGI の呼び出し一回ごとに TCP コネクションを張っているので
これを改めれば改善されるでしょうがそれでもかなりのネックになりそうです。

2)ピア間通信に時間が掛かる。
これもメッセージ送信ごとに TCP コネクションを張っているせいです。
一組のピア間では一つのコネクションを張りっぱなしにして
その上でメッセージ交換をしなくちゃいけませんね。

後者は比較的容易にどうにかなりますが
前者は設計上ちょっと工夫が要りそうです。
これ以外に実装上の手抜きの問題もありますが
プロトタイプということでそれは後回しということで。
ここまでのご協力、ほんとに感謝してます。>All

960 :デフォルトの名無しさん :01/09/02 20:54 ID:71SdL9Z6
パート2立てました。移動を。
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=999431595&ls=50

330KB
新着レスの表示

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

0ch BBS 2004-10-30