■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 最新50

キャッシュ型負荷分散システム開発スレッド

1 :名無し娘。 ◆vP.bOZFQ :01/08/27 19:29 ID:asPJm1Ug
このスレッドは、2ch.net の転送量削減を目指し、P2P-cache型の
負荷分散システムを開発するスレッドです。

参照:http://203.174.72.113/p2pcache/P2Pcache/frame.htm
その他参照スレは >>2-5 あたりに。

2ちゃんねるの軽量化・開発に関する他の話題は、
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998845501&ls=20

その他、障害報告・動作報告等は、
http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998808733&ls=20

に、それぞれお願いいたします。

170 :名無しさん@Emacs ◆oQwux7a6 :01/08/28 23:42 ID:E.ArZ2us
mirror.pl.2 ですが、HTTP/1.1 のデフォルトは持続型接続と
なっているのでファイルをダウンロードしてから Apache が
タイムアウトで接続を切ってくれるまで待つようになります。

Connection: close を送出するとダウンロードが完了したら
即座に Apache が接続を切ってくれるのでミラーリングが
早くなります。

ほんとは持続型接続をうまく利用すべきでしょうけど・・・。

--- mirror.pl.2.orig Tue Aug 28 22:58:33 2001
+++ mirror.pl.2 Tue Aug 28 23:05:11 2001
@@ -322,6 +322,7 @@

###### GET コマンド送出
print S "GET " . $get_command . " HTTP/1.1" . $crlf ;
+ print S "Connection: close" . $crlf;
print S "Host: $servername" . $crlf . $crlf;
1;
}
@@ -336,12 +337,14 @@

###### Range付きGET コマンド送出
print S "GET " . $get_command . " HTTP/1.1" . $crlf;
+ print S "Connection: close" . $crlf;
print S "Host: $servername" . $crlf;
print S "Range: bytes=$range-" . $crlf . $crlf;

### debug..
&green;
print "GET " . $get_command . " HTTP/1.1" . $crlf;
+ print "Connection: close" . $crlf;
print "Host: $servername" . $crlf;
print "Range: bytes=$range-" . $crlf . $crlf;
&nomal;

171 :名無しさん@お腹いっぱい。 :01/08/28 23:44 ID:u7C32C9Y
NNTPは懐古趣味とか言ってみる

172 :名無しさん@お腹いっぱい。 :01/08/28 23:55 ID:lMUSoYms
DQ−−−−−−−N

173 :名無しさん@お腹いっぱい。 :01/08/29 00:22 ID:TrXIg0dU
NNTPウザイ

174 :743 :01/08/29 00:27 ID:F1mQSOi6
>173
昔、ひろゆきさんが「バケツリレー式のNetNewsなんて、ぶっ潰そう!」
なんて言ってた頃もあったけどねー。;-P

175 :( ´Д`) :01/08/29 00:33 ID:iNsPkFvk
index2.plとmirror.plをつかっていろんな板を自鯖に保存したくなってきた・・・

176 :743 :01/08/29 00:49 ID:F1mQSOi6
>175
そう思って皆がミラーし始めて、転送量上がるんじゃないの?

177 :anony ◆3XTuRnAc :01/08/29 01:03 ID:TkQkeuao
>mirror.pl
無事動いてます。index2.htmlからの読み込みなどもオッケーのようです。
IRC経由で友人に頼んで動作確認してもらいましたが、読めるみたいです。

あとは、「このパッケージがあれば動作確認ができるぜ」っていう
アーカイブとドキュメントを書けば良いのかな。
それと、なにげにディレクトリ階層をちゃんと2ch風に合わせないと
だめなんだろうな、という話も考えなきゃ・・・・。

178 :( ´Д`) :01/08/29 01:16 ID:iNsPkFvk
>>176
もちろんミラーサイトから・・・(笑


うーん、次はread.cgi・・・どうやるんだ?

179 :名無しさん@お腹いっぱい。 :01/08/29 02:03 ID:kUOQxvzM
とりあえずmirrortest.tar.gzを自分のサーバーのhttpdルートに解凍して
mirrorフォルダは作りました。あとはmirror.plを実行すればいいんですよね?

180 :anony ◆3XTuRnAc :01/08/29 02:07 ID:TkQkeuao
>>179
あとは、read.cgiを何とかしてmakeして、って作業が必要かと思います。
閲覧にはやっぱりread.cgiをつかいますので。

181 :名無しさん@お腹いっぱい。 :01/08/29 02:12 ID:kUOQxvzM
>>180
read.cgiを何とかって・・・どうするの?(^^;
makeはできるけど、どのファイルなのか。
もう一個のほうのプロジェクトで開発してるんでしたっけ?

182 :Perler ◆GSi39OA6 :01/08/29 02:14 ID:44.z9PPA
みなさん検証ありがとうございます。
Connection: close
以外の不具合は見つかっていないでしょうか?
Connection: closeに関しては、次バージョンで取り込みます。
その前にkeep-aliveに対応したいところですが。

183 :anony ◆3XTuRnAc :01/08/29 02:18 ID:TkQkeuao
>>179
てことで、「必要なもの一式」をまとめてみました。
つまり、「mirror.plを実行する環境」のほかに、「read.cgiを動かす」
こともできなくてはなりません。

ということで、そのアーカイブセットとドキュメントを

ftp://210.170.170.131/incoming/mirrortest/

の中に置いておきました。

184 :anony ◆3XTuRnAc :01/08/29 02:22 ID:TkQkeuao
>Perlerさん
えと、バグというか、不具合というか。

自分はいま、perlerさんが軽く紹介してくれた一行スクリプトを走らせているのですが、
index2.htmlの構築の段階で予想外に時間がかかってるので、
sleep(60)が意味をなしてない感じです(^^;;。

mirror.plの実行終了から60秒じゃなくて、mirror.plの起動から
60秒待って、という感覚なんですが、perlの使用ってこんなんじゃ
ないですよね?

つまり、waitなしでひたすら実行されてしまうように見える、って
ことなのですけれども。

あと、先ほどあげましたmirrortestのアーカイブとかドキュメントとかで
不備がありましたらぜひご指摘ください。

185 :anony ◆3XTuRnAc :01/08/29 02:35 ID:TkQkeuao
えと、明日も仕事なんで、とりあえず自分はここらで寝ます_(..)_
また明日の晩まで実質的には動けません・・・・。

186 :179=181 :01/08/29 02:37 ID:kUOQxvzM
実行してみた。
一応確認だけど、ドキュメントの cd mirror/dat/test
cd mirror/testですよね?(Makefileとソースがそこにあるので)
実行したところzlib.hがなくて動作せず。
探さないと・・・。

187 :Perler ◆GSi39OA6 :01/08/29 02:38 ID:44.z9PPA
>>184
うーん、mirror.plが時間がかかるのは分かるんですが、index2.html
の生成は一瞬のはずですが。。。
ただ、index.datを入れない状態だと、2ch.netのtechのすべてのログ
をダウンロードするため、ものすごい時間がかかります。
昨日あたりのindex.datをサーバーにあげてあるので、それを入れる
とダウンロード時間はかなり少なくなります。
1分ごとの起動だと、mirror.plは1分くらいの時間は食いますが、それは
現仕様では仕方ないです。

188 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/29 03:37 ID:kUOQxvzM
>Perler
ミラーテスト成功しました。
index.html書いてないので、datディレクトリのファイルを直接参照したんですが・・・。
http://www.tokyo-nazo.net/mirror/dat/test/read.cgi?bbs=tech&key=997788843
です。
また明日の夜に覗きに来ます。
私に協力できそうなことがあったら協力しますので。

189 : ̄ー ̄)ノ :01/08/29 09:12 ID:c40YJ4Sg
FTPサーバー落ちてませんか?

190 :anony ◆3XTuRnAc :01/08/29 09:13 ID:4vxuBj56
>perlerさん
すいません、ちょっと勘違いしてました。
切り分け様にprint文要れて動かしてみたら、ちゃんと動いていることを確認できました。
たびたび誤解してごめんなさいです。

えと、今日一日家に戻るまで動かしておきます。
http://210.170.170.118/mirror/dat/tech/index2.html

・・・って、ftpサーバのアドレスも変わってますのでご注意を。
今IP表示させて気づきました(汗

191 :anony ◆3XTuRnAc :01/08/29 09:15 ID:4vxuBj56
>>189
落ちてる、というよりも、IPが変わってます。
ADSLなもので、たまにこうなります(汗。
あ、メインのftpサーバーは落ちてません。

#今朝の6:30ごろに、IPが変わったらしいです。

192 :音楽侍 ◆NtVkSITE :01/08/29 09:27 ID:j/vYHKaU
>>190
こうやって動いてみると、けっこう生々しく現実味がありますね。
ただ、完全ミラーは時間的に厳しいですかね?
サーバ/ジャンル単位に複数のサーバでサポートしたりするのがいいのかもしれない。

193 :名無しさん@お腹いっぱい。 :01/08/29 09:35 ID:nl0FB/..
>>42
>ただし、全板キャッシュするとそれなりの容量と帯域を使うので、最大で数百人〜数千人が
>利用しないと旨みが少ないし、板ごとのキャッシュじゃ2ch.netに振り分けの負荷が掛かる。

2chからはランダムでキャッシュ鯖に転送処理を入れて、
キャッシュ側で全板対応してなかったら、分担リストを元に
更に別の鯖に転送するっていうのは駄目でしょうか?

そうすれば、2ch側では、たまに鯖の生存確認して、
転送リストを更新する程度の処理で済むと思います。
もっとも、登録は信頼性確保の為手動でもかまわないかも?

キャッシュ側でも、自分のところで対応してなければ、
そのまま丸なげしてしまえばいいので、簡単だと思います。

とりあえずテストの段階では転送部も独立可能な気がしますが、
というか登録が少ない内は、自動転送なんかしたら
キャッシュ鯖の方がパンクしてしまうだろうし。
まあ、ユーザーがキャッシュ鯖のアドレス知ってれば必要ないのか?。

負荷の少ないランダム転送ってどうやって実現すればいいですかね?

194 :音楽侍 ◆NtVkSITE :01/08/29 09:39 ID:j/vYHKaU
>>193
読み出しサーバを専門単位かサーバ単位に複数用意しておき、そこを一次サーバにする。
2次サーバがそれら一次サーバ各自から孫になって情報をもらうようにすると、2ちゃんサーバの負担は軽減しますかね。

195 :にはん ◆/gWayilU :01/08/29 09:41 ID:OYkF597Y
>>193
膨大なコストがかかってもいいなら、ロードバランサーを導入すべき。
それではダメなのであれば、DNSラウンドロビンのルールを有人監視 or cronで自動判定
して書き換える、とかする、って感じだろうか。有人監視は有り得ないのでたとえば定期的に
ESTABLISHEDなコネクション数なりプロセス数なりにrequest->replyなチェックをかける、
とかかなあ。

196 :音楽侍 ◆NtVkSITE :01/08/29 09:49 ID:j/vYHKaU
ただ、ユーザが個別にアクセスしなくなるのと、常時一定のトラフィックが発生することをはかりに掛けてみないと何ともいえませんね。
直感的には、各サーバから読み出した方が良さそうだと思うんだけど、
「だったら、bbs.cgiなども設置して、Big-server解放してあげたらどうなのよ?」っていう、すごく根元的な疑問を持ってしまうのです。

197 :にはん ◆/gWayilU :01/08/29 09:59 ID:OYkF597Y
>>196
話が堂堂巡りしてしまうのだけど、まず以下のことがはっきりしないことには負荷分散
(トラフィック分散に限ってもいい)モデルも作れないと思う。

・フロントエンドサーバ群をどこにどれだけ (Big内か分散させた外部か不特定多数かなど) 置くのか
・投稿はどこで受けるのか
・ユーザに対してはどこにアクセスさせるのか
・大もとの記事データは分散して同期させるのか、集中管理するのか
・既存の技術の組み合わせなのか新たに作るのか

これには技術的な話じゃなくて、第8、第9レイヤの話が多々からんでくるから
今ここで話していても埒があかないんだよね。

198 :音楽侍 ◆NtVkSITE :01/08/29 10:06 ID:j/vYHKaU
>>197
ごめんなさい、おっしゃるとおりちょっと混乱気味になりますね。

まず、現状を何とか改善しようと言う方向があって
read.cgi改良スレッド
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998997848
が動いてますね。
で、その延長上で、bbs.cgiも最適化&改良してしまいたいという流れで
bbs.cgi 改良案スレッド
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998921988
があって。
いっそのこと、全く新しい仕組みでやったらどうなの?っていうながれで
P2Pでサーバに依存しない掲示板を作るの巻
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998915621
なんかがあって、で、このスレはというと、
datをミラーリングして、トラフィックの集中化をさけようよ、っていうことですよね?

199 :音楽侍 ◆NtVkSITE :01/08/29 10:10 ID:j/vYHKaU
>>198の続き
で、ふと思ってしまったのが、
至急的緊急避難措置として、このスレの考え方は非常に「あり」なんですけど、恒常的運用となると”?”であると。
それだったら、板ごとに別サーバをもうけることによってBig-serverさんの困窮を救った方が現実的だなぁ、と。
だって、データのトランザクション大きすぎるし、レスの即時性考えたら、read.cgiとbbs.cgiは同じサーバで動いているのが最良なんですし。
そんな事が言いたかったのです。

200 :にはん ◆/gWayilU :01/08/29 10:10 ID:OYkF597Y
もともとはプログラム板のP2P-cacheな提案のスレだったのではないかなあ、このスレは。
流れ的には単なるトラフィック分散全般の話になってるけど。

201 :名無しさん@お腹いっぱい。 :01/08/29 10:12 ID:iU.Fd0UU
>>199 同意 だけどどっちにしろそのサーバの置き場所を確保しないことには
どうにもならないと......

202 :にはん ◆/gWayilU :01/08/29 10:14 ID:OYkF597Y
>>199
本当は規模を考えたらやすやすな構成で分散しようということ自体にかなりの無理があるから、
結局のところ大まかに言って今のところ3択だよね。

・プログラム板のP2P-cache

・「2chサーバ群」ってのは、結局のところただの自動 redirect 装置に成り下がる
 (つまり音楽侍さんが逝っているのはこれだと思う)

・本体はあくまで2chサーバ群にあって、それをdelegationさせる事でトラフィック分散を図る

203 :音楽侍 ◆NtVkSITE :01/08/29 10:15 ID:j/vYHKaU
>>200
それとはちょっと違いますですよ。
そっちで進んでいるのは、
P2Pでサーバに依存しない掲示板を作るの巻
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998915621
です。
あ、今度は私の誤解かも。
最初は、perlerさんが、
「mirror.plみたいなのはすぐ出来るよ。というか、もう書いちゃったよ」
ってところからこのスレが立ったんだと思います

204 :にはん ◆/gWayilU :01/08/29 10:18 ID:OYkF597Y
>>203
あら、こちらの誤解かも。>>1

「このスレッドは、2ch.net の転送量削減を目指し、P2P-cache型の
 負荷分散システムを開発するスレッドです。 」

って書いてあるからてっきり。

205 :音楽侍 ◆NtVkSITE :01/08/29 10:19 ID:j/vYHKaU
>>202
そうですね。
もっと言っちゃうと、ただのDNS(と、正面玄関)になっちゃうのが、本家2ch.netサーバだって事ですね。
その移行的側面として、perlerさんのmirror系スクリプトは超強力なツールだと思いますけど。

いずれにしても、トランザクションコストとして、2chレベルのサイトで、ミラーリングはあり得ないんでは?
なんか、IBMと国際的機関レベルの国家予算的プロジェクトと同質の規模だと思うんです。今すでに。

206 :にはん ◆/gWayilU :01/08/29 10:26 ID:OYkF597Y
>>205
そうなると、ひろゆきとBigは2chから降りなければならなくなってしまうんだよね。
Bigにとってのメリットは2chがさくさく動いているということを宣伝に使える、
ということだから、そのうまみがまったくなくなってしまう。

ひろゆきはひろゆきで、自分はなにも管理していないのに「2ちゃんねる」の代表として
今後も訴訟の際などには呼び出される格好になる。そんな馬鹿らしいことは誰だって嫌だろう
(いまの状態も馬鹿らしいといえばそうなんだけど)。

俺が技術レイヤだけではこの話は堂堂巡りになる、というのはその辺もあるんだ。

純粋に技術話として、大規模な「Webの」BBS群をどう取り扱うか、と言う話をしてみる、
と言う事にも十分意味はあると思うけど、少なくともそれはいまの2chには生かすことは
出来ないと思う。

207 :名無しさん@お腹いっぱい。 :01/08/29 10:31 ID:nl0FB/..
>>194
やっぱり、ラウンドロビンの定期的変更が一番単純でしょうか?

とりあえず、キャッシュ鯖に、アドレスと使用可能な回線容量かなんかを申告させて
それにあわせてラウンドロビンのリストを作成するって感じかな?
リストのサイズは固定にして、余裕が有る鯖は複数回、普通のところは1回呼ぶとかで
負荷調整を図ると。
鯖の事は全然分かってないので知ったかぶりなんですけど、
これってBINDレベルで対応可能って事ですよね?。

>>206
とりあえず、今Big-server以外の鯖って残ってましたよね?
そっちに応用すればいいんじゃないでしょうか?

208 :音楽侍 ◆NtVkSITE :01/08/29 10:33 ID:j/vYHKaU
>>207
そのBig-server以外の2chサーバってさ、昨日ラウンジ一個が引っ越しただけで破綻したんだよ。

209 :音楽侍 ◆NtVkSITE :01/08/29 10:37 ID:j/vYHKaU
>>206
それはその通りです。
そしてそれは、私たちが話しても憶測と推定とやがてバリゾーゲンになってしまうので、みんなやらないのです。
だって、ひろゆきさんの公式コメントないし(今の段階ではない方が私もいいと思ってます)。
私たちはこうやってがんばったりしちゃってますが、ひろゆきさんからみれば、ただのいち2ちゃねらーなだけですから。

そういうことも含め、ひろゆきさんの存念を確認したい、っていうのが夜勤さん上京の本音じゃないかと私は思っているのですけれどね。

210 :Perler ◆GSi39OA6 :01/08/29 10:47 ID:qGdmeavk
現在のミラーの様子

http://202.247.106.47/tech/index2.html
http://www.gedoh.org/tech/index2.html
http://210.170.170.118/mirror/dat/tech/index2.html <− 全コンテンツ取得しているようです

特にanony氏のミラーは2ch本体の代わりとして充分機能している気がします。

>>199
私が考えている展望を書きます。

まず、2日前くらいの予告とともに、2ch.netのread.cgiを板ごとに順次止めていきます。

ここで、予告期間中にわかに有志でmirror.plを走らせる人が増えてくるんじゃないかと思います。
(逆に誰もミラーしてくれなければこの話は終わりです。)
read.cgiが止まった板のミラーが出来たら、さらに別の板のread.cgiを止めていきます。

実際、2ch.netのread.cgiを止めてしまわないと、有志は増えないんじゃないかと思っています。
2ch.net上でread.cgi動いてる時点ではmirror化のメリットは見えてこないですからね。

2ch.netの各サーバーへの振り分けは、当初は考えなくて良いと思っています。
振り分け自体も、現在の2ch.netの対応を見る限り、
ラウンドロビンを2chが早々に導入してくれるという事も考えにくいので、
有志にサーバー一覧(リンク集)をまとめてもらう方向になるのではないかと思います。

サーバーが増えれば、今度は負荷を考えてランダムにミラーサーバーへforwardする
CGIを作って、それをまた有志サーバー上で走らせて対処するのが現実的ではないかと。

これらがうまく機能しなくてもかちゅ〜しゃがあるわけですし。

2ch.netの役割は、玄関と、bbs.cgiによるログ管理のみ、という事になってしまいますが。。。

即時性については、ミラーリングの手法を変える事で対応できるんじゃないかと思います。
現在はHTTPでやってるんでオーバーヘッドが大きすぎますが、

将来的には、2ch側に配信専用サーバーを立てて、クライアント(キャッシュ側)からソケット張りっ
ぱなしにしておき、書き込みがあったら2ch側からデータをputしていくようなシステムに
なるんじゃないかと思います。

GETリクエストを送らなくても勝手にどんどんKeep-Aliveでデータを送りつけてくるHTTPサーバー
みたいなものを想像して頂ければ分かりやすいかと。

211 :名無しさん@お腹いっぱい。 :01/08/29 10:54 ID:nl0FB/..
>>208
だからこそ、分散処理すれば落ちにくくなるって話なのでは?

とりあえずは、避難所レベルの資源を持っている人に協力してもらって
一次キャッシュサーバになってもらうのが現実的かな?

そのうちP2Pのほうが形になってくると思いますし、
一時しのぎができればいいのでは?。

問題は、管理サイドの考えが見えてこないことなんですが、
2chがこの規模を維持するにはどう考えても分散が必要ですから
まあ、最悪の場合、避難所のサポートシステムとしても有効ではないかと思いますし、

212 :Perler ◆GSi39OA6 :01/08/29 10:56 ID:qGdmeavk
前にも書いたんですが、現在サーバーは生きていて、read.cgiだけ止まってる
板ってあるんでしょうか?

あるのなら、そこをミラー化させるのが一番よい実験題材なのですが。

213 :音楽侍 ◆NtVkSITE :01/08/29 10:57 ID:j/vYHKaU
>>210
Perlerさん、おはようございます。
んー、そうですね。即効性アクセス削減案と言うところまでは異床同夢です。
P2Pについては、クライアントの開発が絡みますので、3-6ヶ月はかかると思います。
早ければ10月にはBig-serverさんは手を引く可能性がありますので、間に合いません。
また、ミラーリングの精度を上げるのも限度がありますし、ミラーするくらいだったらbbs.cgi語とおいたって一緒じゃないか、っていう発想だってあるです。
夜勤さんは9月の帯域料金は50Mまでしか支払えないって明言していますし。

214 :名無しさん@お腹いっぱい。 :01/08/29 13:20 ID:y.SJYiFg
キャッシュサーバーですけど、
ファイルの容量ってどれぐらいになるのですか?
容量によっては走らして見たいと思ってるんですけど。

215 :音楽侍 ◆NtVkSITE :01/08/29 13:21 ID:j/vYHKaU
>>214
走らす板によって違うと思いますよ。
techで15.5MB程度ですかね?

216 :名無しさん@お腹いっぱい。 :01/08/29 13:27 ID:y.SJYiFg
>>215
了解です。
cygwinで走らせて見ます。

217 :名無しさん@お腹いっぱい。 :01/08/29 14:06 ID:nl0FB/..
>213
まあ、ビジネスの話については、ひろゆきに代わりの広告主見つけてくれ
としか言えないですけどね。あとは夜勤さんガンバ!かな?
とりあえず、Bigサーバのイメージダウンにならない形でやらないと
本当に撤退って可能性もあるので、それだけは避けないと。

にしても最近一番疑問だったのは、PROXYに対する対応。
PROXYを使うのが、本来の目的であるキャッシュ効果よりも、
荒らしがしやすい事の方が強調されて、2chでPROXYつかうのは、
なにか後ろめたい事のような風潮になってたように思いますね。

ところで、普通のPROXYなんかと比較すると、どのくらい効果が違うんでしょうかね?
主にアクセス集中時のケースで、3者の比較が出来ればいいかも?

218 :Perler ◆GSi39OA6 :01/08/29 14:13 ID:qGdmeavk
>>217
今回の場合、キャッシュすべきものがかっちり決まってるので、
mirror.plの方が効率が高いでしょうね。
あと、汎用のHTTP-Proxyだと、.datではなくHTML化したものを取ってくるので、帯域を
余分に喰うことになりそうです。

219 :Perler ◆GSi39OA6 :01/08/29 14:17 ID:qGdmeavk
とりあえず、私の環境ではmirror.plは順調に動いています。
昼はアクセスが少ないためもあって、1分ごとの起動で、1回の取得が数秒と、
かなり快適なミラーリングになっています。

あとは、コマンドライン引数で板やサーバーの指定が出来るようにして、
その後.datをgzipで保存するように対応したいです。

220 :山師さん :01/08/29 15:40 ID:qc5beSto
6ヶ月限定らしいが2600円で結構使えそう>開発用に
どうよ?

http://prime-jp.com/host/advance.html

221 :素人さん :01/08/29 16:28 ID:W.7THPBI
Big の外の帯域制限の緩い鯖に Apache proxy かなんか置いて、www.2ch.net のA レコードはそっちを指してもらうってのじゃダメなの?

222 :名無しさん@お腹いっぱい。 :01/08/29 16:49 ID:iU.Fd0UU
>>221 その場合はproxy/cacheじゃなくて「ミラーサーバ」になるでしょう
でも その「Big の外の帯域制限の緩い鯖」はどうするの?
それに 2ch.netのプライマリDNSの設定権限を持ってるのはだれ?

まぁ それがクリアできるのなら「激しく同意」なんだけどね

223 :素朴な突っ込み :01/08/29 19:06 ID:NvOO2vOY
あのー、P2Pが本命ではないかと言っておられる人が多いようですが、
2ちゃんの規模でそれをやって、日本の通信回線は大丈夫なのでしょうか。
今の2ちゃんの転送量では大丈夫かもしれないけど、一年後の転送量は・・・

と言うわけで、このスレのプロジェクトが実は本命なのではないかと
思うのですが、どうでしょう?

224 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/29 19:43 ID:DVACnJqw
>>188自己レス。
寝ぼけてていたらしくて寝言言ってた。申し訳無い。
http://www.tokyo-nazo.net/mirror/dat/tech/index2.html
で、ミラーリングはとりあえずできてるみたいです。
あと、今はうちのweb server使ってるけど、まだグローバルIPに空きが
あるので、2chテスト専用サーバを来月中にはおったてます。128Kbps線
だけど。
>>223
できそうなものはとりあえず全部やってみるのがいいのでは?
その中からいいアイデアが出るかもしれないし。
どれかを本命と決め打ちして、それがこけたらそれこそ致命的だと思う。

225 :名無しさん@お腹いっぱい。 :01/08/29 20:06 ID:32goOYrE
>>158さんのを参考にmirror.plを走らせてみたんですが、
<H1>Connect Error</H1>って出ます。
Vine-2.1.5, perl 5.005_03
なんですが、どうしたらいいでしょうか?

226 :225 :01/08/29 20:37 ID:32goOYrE
あー、今windowsマシンにcygwin入れて試したら、
ちゃんと動いてるっぽいです。
原因はperlかなあ?

227 :ターボ戦隊イエロー :01/08/29 22:07 ID:DVGyRnrk
>>225 TurboLinuxにのりかえる

228 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/29 23:07 ID:DVACnJqw
えーと、>>183のドキュメント、eucで書かれてたんでちょっとだけ苦労した(^^;
というわけで、ここに修正して貼るけど、いいよね?
1. アーカイブを展開します。
gzip -dc mirrortest.1.0.tar.gz | tar xvf -
2. read.cgiをbuildします。
cd mirror/test
make -f Makefile
3. read.cgiをコピーします。
cp read.cgi ../dat/test/
4. mirror.plがあるディレクトリに移動します。
cd ../../
5. mirroringを実行します。
./mirror.pl

全てが終わったら動作を確認しましょう。
ブラウザでhttp://(解凍した場所)/mirror/dat/tech/index.html

で、合ってますか?

229 :名無しさん@お腹いっぱい。 :01/08/29 23:47 ID:VGLV51Nk
http://mankomankomanko.virtualave.net/bbs.txt
をbbs.cgiにして、
../dat/test/
に入れても動きますよ。

make出来ない人でもこれで動かせるはず。

230 :anony ◆3XTuRnAc :01/08/30 00:08 ID:grWs5t1E
>>228
そんな感じです。清書感謝です。
あと、自分で書いてて&自分で外から自分ちのミラーにアクセスしてみて
気づいたんですが、bbs.cgiがないと意味がないことに(汗

というか、Perlerさんのmirrorツールが生成するmirrorから
記事にアクセスして「書き込む」をやると、2ch本体じゃなくて
ミラーサーバーの方のbbs.cgi見に行くような感じがするんですが>Perlerさん

mirrorの仕様上、bbs.cgiは2ch本体のものを見に行かないと
意味がないと思うのですが、read.cgiで生成されるhtml見てると、
そのサーバー上のbbs.cgiを見てるような。

231 :anony ◆3XTuRnAc :01/08/30 00:17 ID:grWs5t1E
って、ひょっとして自分がつかってるread.cgiが古いのかな?
2ch-read-currentの中からそれっぽいの最新を取ってmakeしたのだけれど。

232 :anony ◆3XTuRnAc :01/08/30 00:24 ID:grWs5t1E
てことで即席ハックで強引に2ch本体のbbs.cgiをつかうように
してみたんですが、やっぱり無理のようでした。って当然か・・・。

233 :名無しさん@お腹いっぱい。 :01/08/30 00:33 ID:8gDt9PTM
>>232
書込みフォームを消して、
書込みボタンを付ける。
で、そのボタンで本家のread.cgiを呼び出す。
ただしls=1で。
これならあまり負荷は掛からないのでは。

234 :名無しさん@お腹いっぱい。 :01/08/30 01:09 ID:TfjSc3dw
>>233
read.cgiがls=0を許容すればもっといいんだけどね。
暫定案としては賛成。

235 :名無しさん@お腹いっぱい。 :01/08/30 01:13 ID:Xut3shDo
>>234
現状のread.cgiはls=2が最小の模様。
ls=1にすると全てを取得しようとする。

236 :名無しさん@お腹いっぱい。 :01/08/30 01:17 ID:TfjSc3dw
>>235
nofirst=true&ls=1なら最終1レスのみ取得できる模様。

237 :anony ◆3XTuRnAc :01/08/30 01:20 ID:grWs5t1E
うーん、でも書き込むときにもうワンステップ踏むのって
やっぱ面倒じゃないかと思うんですが。
上の書き込みを見ながらレスを書くとかって普通にやるじゃないですか。

238 :名無しさん@お腹いっぱい。 :01/08/30 01:23 ID:TfjSc3dw
>>237
別ウィンドウで2ch.netのread.cgiを開くようにすればよい。

239 :名無しさん@お腹いっぱい。 :01/08/30 01:37 ID:9VE7JjWs
恒久対策をうつのなら、
・最大許容転送量に応じた処理能力規制
が必要なんじゃないの。

要は、金融業界でやってるキャパシティ・プラニングが必要。
単に転送データ量が軽いだけだと、
首都高や東名と同じ現象が出るだけではないかい?
(道幅広げた分利用者が増えて混み具合は変らない
 →道幅広い分、車がより多く通れるようになってしまう
 →車のハバを小さくしたらどうか?これも同じこと
 →いまさまざまな板で考えているのはこれに収斂してしまう)

まじめに、キャパシティプラニングを捉えてみないか?

240 :名無しさん@お腹いっぱい。 :01/08/30 01:44 ID:TfjSc3dw
>>239
真面目にやるとしたらプロ技板の手に余りそう。
通信技術板とかに振れないかな。
あっちにはそう言う技術者いるかな。

241 :名無し娘。 ◆vP.bOZFQ :01/08/30 01:55 ID:HrH04.b6
>>239-240
少なくとも 2ch.net では、それはやらない方向で。
初期にガイシュツ。
キャッシュサーバー間でそれは、必要かもしれない。

242 :anony ◆3XTuRnAc :01/08/30 02:10 ID:grWs5t1E
とりあえず、良いアイディアがでないので、寝ます・・・。
もうちょっといろいろ考えてみたく。

>娘。さん
実験参加できなくてごめんなさい。

あ、とりあえずミラーサーバーとftpサーバーは
生かしたまま放置プレイしておくので。

243 :名無し娘。 ◆vP.bOZFQ :01/08/30 02:12 ID:HrH04.b6
>>242
いえいえ(^^;
お疲れさまです。

244 :あぼーん :あぼーん
あぼーん

245 :名無しさん@お腹いっぱい。 :01/08/30 02:51 ID:RRvj6jF.
ユニマガ8月号に書いてあったyahoo.co.jpの構成は参考にならんか?

246 :名無しさん@お腹いっぱい。 :01/08/30 03:58 ID:9VE7JjWs
>>241
やらずに可能なんだろうか・・・
今度は有志の維持環境が同様の目に会うだけだと
思うのだが。

247 :名無しさん :01/08/30 07:02 ID:9q6FHzvw
>>245

何がどう参考になるのだ?

248 :245 :01/08/30 08:52 ID:9Kp01ciI
>>247
負荷分散の仕方とか。
# ならんのならすまそ。そのときは逝く。

249 :安西 :01/08/30 08:56 ID:sxla9v.Q
あきらめたらそこで試合終了です。

250 :名無し娘。 ◆vP.bOZFQ :01/08/30 17:07 ID:y2CYzMG6
>>246
帯域制限かけるくらいなら、むしろ2ちゃんねる人口を減らす方がまし、という
感じでしょうか。

251 :anony ◆3XTuRnAc :01/08/30 19:27 ID:E5ciTOEw
てことで、どうやらPerlerさんのmirror.plも動いているようですから、次のフェイズに移行しませんか?
私が感じてる課題としては、大きいものから小さいものも含めて

・mirrorサーバーからシームレス投稿できたほうがいいと思う。

 「mirror側では投稿フォームを出さず、代りに「投稿する」リンクをread.cgiが作成し、
 そのリンク先は2ch本体のスレッドを別ウィンドウで開いて表示、そのWindowsから投稿させる」
 というアイディアはだされたけれど、やはりシームレスにいけるに越したことはないとは思うんですね。

 となると、「mirrorサーバーに投稿して、mirrorサーバーが即座に本体にpostする」しくみ、ってのが
 必要になると思います。そうなると、やはり投稿のレスポンスなども考えると

  ミラーが投稿を受け付け→ミラーが本体に投稿→
  すぐに本体からデータをmirroring(ほかのミラーからも投稿されているかもしれないのでそれをマージ)
  ミラーの内部のcacheから生成したindex2.htmlを表示

 みたいな方法になると思うのですが、mirrorのときのレスポンスが悪いですし、問題のトラフィックも
 結構ありそうで、解決方法がうまく見つかりません。この線はもうなしで、既出の解決策の方法になるのでしょうか。

・mirror.plなどのディレクトリ構成
 細かいことかもしれませんが、やはり、この手のツールを有志で運用する、しかも「キャッシュとして使ってもらう」
 ということも考えると、ディレクトリ構成を2ch本体に準ずる必要があると思います。

 つまり、
   ・必要なtarballを、Apacheの$documentrootで展開して動かせば2chと同様のディレクトリ構成となる
 という構成になってることが実は運用というか稼動では結構重要ではないでしょうか。

このあたり、ご意見聞かせていただければ幸いです。

252 :名無し娘。 ◆vP.bOZFQ :01/08/30 20:00 ID:KS31DBTQ
>>251
ガイシュツで申し訳ないですが。。。
前半について、ミラーが投稿を受け付けるのは、2ch.netの匿名性、
ミラーサーバーの管理者への信頼等がありますので、難ありかと。
action先を xxx.2ch.net/test/bbs.cgi にして、2ch.net 側で登録した
鯖からのPOSTを受け付ける、というのでどうでしょう。
いちおう、投稿者の行動がミラー管理者に見えにくくなると思うのですが。

253 :音楽侍 ◆NtVkSITE :01/08/30 20:06 ID:7UF/vWVo
みなさんおつかれさまです〜
>>252
それを言い出すと、read.cgiでもそうなんですけどね。

254 :名無し娘。 ◆vP.bOZFQ :01/08/30 20:15 ID:KS31DBTQ
>>253
そうですね。ただ、利用者の心理的な部分では、読んでるのと書いてるのでは
差が大きいと思います。
書いている場合は、コテハンがわかったり、発言内容とIPが対応したりと、
嫌な感じなことが多いですから。

でも、bbspinkを読んでいる、ってのを知られるのは(゚д゚)マズーかもしれません(笑

255 :音楽侍 ◆NtVkSITE :01/08/30 20:19 ID:7UF/vWVo
>>254
pinkですか(笑)なるほど。
気をつけないと、いっぺんip-recordableなcgiかませてから
Locationでとばす不心得者が出る可能性もありますしね(笑)
6〜10行程度のperlで記述可能だし。

256 :anony ◆3XTuRnAc :01/08/30 20:27 ID:E5ciTOEw
>娘。さん
ありゃ、やはりがいしゅつでしたか。失礼しました。

とりあえず、ミラーサーバーでの中間キャッシュにIPさえ残さなければ2chに残るのはミラーの
IPだけってことになるから、何とかなるかなーなどと思ってたんですが、よく考えたらミラー側の
apacheのLogにも残ってしまうんですよね。そのpost用のツールも管理者が改変しないとも限らないと。

やはり「投稿のときにだけは本体にアクセスしてもらう」か、「登録したサーバーからは直接bbs.cgiを呼べるようにする」
しかないのかな。前者だと「面倒だから最初から本体にいこう」とかなっちゃいそうな気もしますが・・・。

257 :名無しさん@お腹いっぱい。 :01/08/30 20:53 ID:stSp5H8A
>>256
2ch.net本体も同じUIにすればいい。
すなわち、read.cgiでは通常投稿フォームは置かないで、
[投稿フォーム]ボタンで別Windowでの投稿というように
シーケンスを統一する。
連続投稿荒らしをある程度抑止できるかもしれないという
期待もある。

258 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/30 21:12 ID:xz66aZYk
ちょっとやり方として可能かどうかはわからないけれど、貼りつけ合成って
できるんでしょうか。
つまり、2chからは&st=1&to=1指定でベースと書きこみフィールドだけ取ってきて、
その中間にキャッシュのデータを挟み込んでやるんです。
これができるなら、1だけは取らなければなりませんが、他は取らなくてもいいです
よね。

259 :名無しさん@お腹いっぱい。 :01/08/30 21:17 ID:stSp5H8A
>>258
IFRAMEを使用すれば可能。ただしUA依存が激しいのでおすすめしかねる。
ついでに、read.cgiに対して&ls=0で0レス取得は提案済み。

260 :名無しさん@お腹いっぱい。 :01/08/30 21:21 ID:kBS5NSxo
いきなりすいませんがプロ技板は閉鎖しちゃったんでしょうか。
read.cgiハックスレを毎日帰宅してから追いかけてたんですが。。ROMですが (^^
残念〜

261 :音楽侍 ◆NtVkSITE :01/08/30 21:23 ID:7UF/vWVo
>>260
かちゅう〜しゃ使ってない?
ブラウザから行くと新しいリンク先わかるよ〜

262 :名無しさん@お腹いっぱい。 :01/08/30 21:34 ID:kBS5NSxo
>>260
ありがとッス、piza2に引っ越してたんですね
板一覧はローカルだったのをすっかり忘れていました  ^^
今mirror.plを導入すべくcygwinを設定してます (ウィンナなんで。)
linuxは何故かNETに晒すのが怖い。。。。んー厨房だ
感謝です

263 :てんてんdwp@ yankee.tokyo-nazo.net :01/08/30 22:09 ID:xz66aZYk
>>259
すまん、私はにちゃんねらーじゃないので、2chをよく知らないんだ。礼儀違
反だったかな?またなんかあったら教えてくださいな。

結論としては>>252のようにbbs.cgiを変えてmirrorサーバからのリクエスト
を受けてもらうのが一番データ転送量が少ないし、その他の問題も少なくて済
みそう、ということでいいのかな。

あとmirror.plだけど、プロセスとして定期的に起動するようなスクリプトも
組みこみが必要ですね。>>158の5のやり方だとログインしっぱなしになるんで。

264 :名無しさん@お腹いっぱい。 :01/08/30 22:14 ID:7fOtYCeU
>263
単に起動するだけだと前のプロセスとファイルを取り合う可能性があるので、
queue に突っ込んで、
前のプロセスの処理が終わってなかったら待つなり諦めるなりの
それなりのスケジューリングをしないと。

265 :  :01/08/30 22:15 ID:7ajzWl22
そろそろ出来た?

266 :名無しさん@お腹いっぱい。 :01/08/30 22:27 ID:tJ.u7wQ2
しかし大丈夫なのかなぁ?
ミラーのやりあいで、フレーム起こって
かえって転送量増える事ないのかなぁ?

267 :Perler ◆GSi39OA6 :01/08/30 22:46 ID:8hpmXoeM
ではとりあえず、mirror.plに関して、

・コマンドライン引数による、サーバー/板の指定
・多重起動抑制
・デーモン化のコマンドラインスイッチ設置
・ログのgzip化

の変更を開始します。

268 :名無し娘。 ◆vP.bOZFQ :01/08/30 23:17 ID:KS31DBTQ
後ろ向きな考えでアレですが、ミラーサーバーでの改変や同一性検証を
どのように行うか、展望はありますか?
データを暗号化して公開鍵でread.cgiが複合するとか、
ミラーサーバー間&2ch.netが何かのついでにちょくちょくとCRCなりMD5なりを
チェックするとか。。。でしょうか。

269 :Perler ◆GSi39OA6 :01/08/30 23:29 ID:8hpmXoeM
>>268
そこまでコストかけても、ミラーサーバー側のスクリプトいじられたらアウトなんですよね。。。
公開鍵で復号はいい案だと思うんですが、Rangeでのログの取得が出来なくなりますし。
どうしましょうか。。。?


続きを読む

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver5.26+ (01/10/21-)