■掲示板に戻る■ 全部 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

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

115 :Perler ◆GSi39OA6 :01/08/28 16:23 ID:0ST40Qqw
うーん、IRIXはあると思いますよ。。。>Socket関連関数
Perlのコンパイル時の問題なのか、構造体のメンバが違うのか。。。

ちょっと私のソースの方も見てみますね。

116 :名無しさん@お腹いっぱい。 :01/08/28 16:38 ID:cccdonUU
共用レンタルサーバでも可能ならミラーサーバ参加したいが。。。
まあ、専用じゃないと迷惑だよな。

117 :名無しさん@お腹いっぱい。 :01/08/28 16:39 ID:bv2vU4Sg
サーバを提供する人が現れないとなると、
このプロジェクトが2chを救うのは、次の消滅騒ぎまでなさそうですね。
次は冬休みかなー

118 :名無しさん@お腹いっぱい。 :01/08/28 16:43 ID:k3Czl6QU
>Perler様
えと、昨日は一日ダウン&今会社にいるんで協力遅れてごめんなさいです。
もし必要であれば、今夜家に帰ってからなら稼動実験に参加できます。

あ、210.170.170.131 の持ち主です、はい。

それと、どなたか「稼動実験に参加するための手順」をまとめて頂けないでしょうか。
もしくは「稼動実験を開始するために必要なファイルをtar.gz形式でまとめる」かですね。

#いま会社なんで、時間が取れなくて自分はまとめも出来なくて・・・・。

119 :名無しさん@お腹いっぱい。 :01/08/28 16:52 ID:yjTgjGXo
>>117
ハード的な問題なら、現物寄付でどうにかなると思いますけど
2chのDNSやCGI側での振り分けをBIG Serverが許可してくれるか
難しい問題ですよね。

勝手にキャッシュサーバじゃ実効が上がらないとおもいますから
現段階で2ch管理の方にここに来てもらって、BIG Serverと話し合う時の
検討事項にしてもらう必要があるでしょうね。

120 :Perler ◆GSi39OA6 :01/08/28 17:07 ID:0ST40Qqw
色々返事遅れてます。

mirror.plがchunkedに対応してなかったため、不具合が出てました。
あと、rangeに対応させました。
デバッグ用コードを外してからリリースします。

121 :Perler ◆GSi39OA6 :01/08/28 17:50 ID:0ST40Qqw
mirror.plが新しくなりました。

ミラー用スクリプトとしては大体完成に近いんじゃないかと思います。
あとはあぼーん対策だけですね。。。簡単そうなんですが、また仕事に戻って
しまうので、変更は後回しです。すみません。

ftp://210.170.170.131/incoming/perler/mirror/index2.pl.2
ftp://210.170.170.131/incoming/perler/mirror/mirror.pl.2

122 :Perler ◆GSi39OA6 :01/08/28 17:56 ID:0ST40Qqw
とりあえず新バージョンは、

Fancy Indexを取得。

そののち、Fancy Indexを参考に1分単位で更新されているファイルを取得。

その際、キャッシュを見て、既にキャッシュがあれば、Rangeヘッダを送信。

。。。という方法を採っています。

現在のところ、piza2のtechをターゲットに10分おきに走らせた場合で、
1回ミラーするのに1分前後に収まっています。

123 :名無しさん@お腹いっぱい。 :01/08/28 18:09 ID:fuFoxE4A
では
サーバ提供者が現れないなら勝手にジオとかに自動的にユーザ登録して
.datをミラーしてしまうってのは?


ミラーしたスレは適当なキーワードと共に
2ch側にアドレスを書き込んでしまう

別班で、Windows用の専用ブラウザかプロキシを作り、そのキーワードを
発見したらミラーを読むようにし、 ファイルサイズに差があれば、その差を
埋める動作をさせる

124 :Perler ◆GSi39OA6 :01/08/28 18:18 ID:0ST40Qqw
>>123
それってgeocitiesだとabuseですよね。。。

2chの規模でそれやったら、冗談抜きで威力業務妨害罪とか
に問われそうです。。

http://www.geocities.co.jp/members/info/contents.html
>ホームページをファイルダウンロード専用のページとしたり、
>他のページ(ジオシティーズ内外を問わず)へのリンクをす
>るためだけのページ

125 :名無しさん@お腹いっぱい。 :01/08/28 18:19 ID:cccdonUU
tripod の jump2ch もどうかと思うけど。
ところで、cron が使えるところならミラー可能?

126 :名無しさん@お腹いっぱい。 :01/08/28 18:21 ID:k3Czl6QU
>>125
取り合えず、「root権限がもらえる」という前提は必須かと。
cronだけじゃなくて、色々な事をやらなければいけない事を考えるとね。

127 :Perler ◆GSi39OA6 :01/08/28 18:25 ID:0ST40Qqw
>>126
私が作った奴の今の仕様だといらないです>root権限
特に必要になる状況も思いつかないです。
cronも不要。

while(1){
system("./mirror.pl");
sleep(60);
}

ってのをbgで走らせてほったらかしにしてあるだけですんで。
逆にcronで走らせる間隔が短いと、今のスクリプトだと
二重起動起こしてファイルを潰しあう可能性があります。

128 :名無しさん@お腹いっぱい。 :01/08/28 18:29 ID:cccdonUU
>126
そっか。やっぱり自前か専用じゃないと無理だね。
一応シェルは使える。

129 :名無しさん@お腹いっぱい。 :01/08/28 18:31 ID:cccdonUU
>127
それはそれで鯖管に怒られそうだ…
プロセス切られたりして。

130 :Perler ◆GSi39OA6 :01/08/28 18:41 ID:0ST40Qqw
>>128
シェルがつかえるならmirror.plは充分動くよ

131 :名無しさん@お腹いっぱい。 :01/08/28 18:45 ID:6S1uJJBo
だれかホスティング/ハウジング業者とかデータセンタでそれなりの権限もってる
人とかいないのかな?

132 :375 ◆MsUYMX0E :01/08/28 18:51 ID:efUShCBo
実は

「2chのような掲示板システムってP2Pで」
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=990334284

でも鯖探してます。
こっちで必要なのは2ch.net に追加する新cgiがテストできる
鯖なのですが、相乗りさせていただくことって可能ですか?

ちなみにcgiの機能としては
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=990334284&st=537&to=537&nofirst=true
です。

133 :名無しさん@お腹いっぱい。 :01/08/28 18:54 ID:KihuaPf6
漏れ鯖一台余ってるYO!さくらのパーソナルだけど(w

134 :名無しさん@お腹いっぱい。 :01/08/28 18:55 ID:/foo1b.s
>>131
それなりに権限をもっているだけじゃダメなのよ…。
きちんとしたビジネスプランなり研究プランを示せないことには、
学校・会社では通用しないんで。

なので、比較的いいわけが効く実験環境ならなんとかなるけどって
いう人が多い。

135 :名無しさん@お腹いっぱい。 :01/08/28 19:10 ID:k3Czl6QU
>>127
なるほど。誤解してました。
確かにそのループならroot権限は要りませんね。

136 :名無しさん@お腹いっぱい。 :01/08/28 19:13 ID:cccdonUU
研究にするにしても、大抵の学校のサーバでは無理そう。
少なくてもうちの学校は WIDE にぶらさがってるだけなので転送量的にキツイ。
教授に申請しても ハァ?(゚Д゚) といわれるのがオチだなあ。

やはりサーバ業者の協力が不可欠なような。
キャッシュサーバみたいなのををビジネスにしてる企業に売り込む?
費用対効果が低いのはbig-serverで証明されちゃってるから難しそうだ。

137 :名無しさん@お腹いっぱい。 :01/08/28 19:22 ID:HEWceQCw
ここはThe Internetの基本に立ち返っていっそ米軍に泣きつくとか…

138 :名無しさん@お腹いっぱい。 :01/08/28 19:29 ID:/foo1b.s
>>136
いや、ある程度の数の proxy が立ち上げってくれば
2ch の全てを肩代わりするわけじゃないので大丈夫だとは思う。
ただ、実運用時には個人の趣味の範囲で許される程度からは
外れそう。

ちなみに、ビジネス・研究とは関係なくても netnews の場合
は各会社や provider が NNTP server を自前で用意していた
過去があるけど、これは junet=fj & mail だった名残なのかなぁ?

139 :音楽侍 ◆NtVkSITE :01/08/28 19:37 ID:9soq5dsg
お疲れさまです。
現在のindex2.plで吐き出されるデータって、テスト状態のデータですよね?
件名(件数)の件数が10000件以上のものもありますけど。

140 :名無しさん@お腹いっぱい。 :01/08/28 20:01 ID:cccdonUU
>138
ミラー方式だと本体への負荷が高いので、
へたに proxy の数が多いと効果が低くならない?
結局データ自体は本体に集中してる。
最終的には NNTP や P2P だと思う。

141 :にはん ◆/gWayilU :01/08/28 20:03 ID:rXhYdVC.
VLAN切ってストレージサーバを用意するとかじゃダメかねぇ。

142 :名無しさん@お腹いっぱい。 :01/08/28 20:07 ID:/foo1b.s
>>140
read access が極端に多く、traffic が問題となっている
状況ならば、proxy が多くてもそうは問題にならないでしょう。

いざとなったら squid のように proxy 間で data のやり取り…。

#って、そりゃ NNTP 化するのとほぼ同義だな。

143 :にはん ◆/gWayilU :01/08/28 20:12 ID:rXhYdVC.
>>142
要するにここでのproxyの役割は、cacheによる高速化ではなくてdelegationによる
バックボーンの負荷分散、ってことだよね? >>140 が言っているのは、(更新頻度を考えると
P2Pじゃないキャッシュがほとんど意味をなさない2chで)キャッシュサーバから本体に取りにいく
トラフィックの総計は、今のエンドユーザのトラフィックの総計と大して変わらないのではないか、
という話なんじゃないかなあ?

# でもそれだとproxyの数はあまり関係ないね

144 :名無しさん@お腹いっぱい。 :01/08/28 20:12 ID:cccdonUU
>142
なるほど。だとしても板と時間帯によるね。
ニュー速やラウンジならともかく、
WebProgとかレンタル鯖には必要ないだろうし。
それと朝方は比較的アクセス少ない。

145 :名無しさん@お腹いっぱい。 :01/08/28 20:14 ID:cccdonUU
ちょっと誤解。
キャッシュサーバへのアクセスしか許さないならば、効果はあると思う。

146 :名無しさん@お腹いっぱい。 :01/08/28 20:24 ID:6S1uJJBo
っていうか cache/proxyというよりdatファイルをコピーしてミラーリング
というのならどうなの? readよりwriteの頻度の方が低いんだから
カキコがあるたびにdat転送しても 今のreadアクセスよりはトラフィックは
だいぶ少なくなると思うけど

147 :名無しさん@お腹いっぱい。 :01/08/28 21:15 ID:o186web.
>readよりwriteの頻度の方が低いんだから
次スレに移って一ヶ月以上も経つのに。
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=969471588&st=977
こうゆヤツも救うのかと思うと悲しくなるね…

148 :名無しさん@お腹いっぱい。 :01/08/28 21:17 ID:kWMpTnew
read.cgi は、5.10 になったが。
bbs.cgi は古かった模様…。

149 :名無しさん@お腹いっぱい。 :01/08/28 21:18 ID:/foo1b.s
>>147
おかげで、bbs.cgi の挙動が不審なことはわかったけど:-)

#でも、read.cgi と違って手のうちようがない…

150 :名無しさん@お腹いっぱい。 :01/08/28 21:33 ID:cccdonUU
>147
頭が痛いね…とりえあずスレスト依頼すべきだ。

151 :名無しさん@お腹いっぱい。 :01/08/28 22:15 ID:RfRAQI/.
スマソ 外道ネタ

 一ヶ月借りてその後の退会は自由との事
 「実験だけなら何とか出来ない?」もっともドメイン持っている人じゃないと
 ダメっぽいケド・・・どっちにしても自分で書いてて情けないな・・鬱だ逝ってくる。
『interQまるごとサーバー』は、サーバーを1ヵ月無料で体験できます。
http://www.marugoto-server.com/campform.html?mid=970026
CGI/SSI/アクセス解析可/NTTネットワークセンター内設置にて320Mbps接続
現在取得済のドメインにてサーバーをお申込み頂きますと、翌日にサーバーの用意ができます。

152 :名無しさん@お腹いっぱい。 :01/08/28 22:22 ID:6S1uJJBo
>>151 それってIPアドレス直打ちじゃダメなのかね?

153 :名無しさん@お腹いっぱい。 :01/08/28 22:23 ID:cccdonUU
悪名高き InterQか…

interQは詐欺商法(第3版)
http://salami.2ch.net/test/read.cgi?bbs=isp&key=995199180

154 :名無しさん@お腹いっぱい。 :01/08/28 22:26 ID:u7C32C9Y
板を丸ごとじゃなくて、混んでるスレだけでも分散できないかな。
混雑スレ専用proxy。かちゅーしゃなどに組み込んで。
一つのスレに連続投稿すると勝手に起動して、2ちゃんに連絡する。
以後、そのスレを読もうとすると、proxyを経由させられる。
かちゅーしゃに組み込まれたバックドアから2ちゃんが侵入するようなイメージで(w

実況などに抑止効果があると思う。巡回ソフトには効果ないけど。
2ちゃん側の変更がどの程度になるのか全然分かりませんが。

155 :にはん ◆/gWayilU :01/08/28 22:27 ID:rXhYdVC.
多分俺と同じ状況で歯痒い思いをしている人はたくさんいると思うのだが、
俺んとこはフレッツADSLで固定グローバルIPを8つもらえるサービスを使っていて、
現に稼動しているApacheがあるので、テストだけだったらIPbasedなVirtualHostで
環境を提供することも出来る。DNSラウンドロビンの実験用にVIPを振ってそれ様の
namedを上げたりしてもいい。でも、問題なのはドメインネームが.netだから個人情報が
駄々漏れになってしまうんだよ……(;´Д`)

156 :名無しさん@お腹いっぱい。 :01/08/28 22:30 ID:Os46TJAs
>>155
IP8個ならその時点で駄々漏れじゃん

157 :にはん ◆/gWayilU :01/08/28 22:31 ID:rXhYdVC.
>>156
日本の一般用whoisでは電話番号とかは出ないじゃん。

158 :( ´Д`) :01/08/28 22:42 ID:2aE5H8v6
>>118
>それと、どなたか「稼動実験に参加するための手順」をまとめて頂けないでしょうか。
>もしくは「稼動実験を開始するために必要なファイルをtar.gz形式でまとめる」かですね。

漏れのやった(やっている)手順
1:最新のindex2.plとmirror.plをGET
2:2つのファイルを/usr/local/etc/www/data/に移動し
 実行できるようにchmod
3:data以下にdat/tech/datを作る
 (パーミッションは777でやっちゃったよ。)
4: ./index2.pl tech
5: perl -e 'while(1){system("./mirror.pl");sleep(60)}'

今現在取り込み中・・・


問題があったらメールなりで指摘してくれ。
環境は自宅鯖、Pentium166Dual(藁 FreeBSD-4.3-stable apache-1.3.20

ahoahodqn@hotmail.com

159 :名無しさん@お腹いっぱい。 :01/08/28 22:42 ID:/foo1b.s
>>157
そうなんだよね。ヲレの場合、whois db を更新していないので
実家の電話番号が出てきちゃうんで、とんでもない大問題なのだ…。

160 :( ´Д`) :01/08/28 22:45 ID:2aE5H8v6
鬱氏
/usr/local/etc/www/data

/usr/local/www/data

まぁとにかくApacheのdataディレクトリ

161 :天才東大医学部5回生 :01/08/28 22:55 ID:rpp3OriI
----------------------------------------------------
*******************2chが閉鎖?ワラタヨ******************
----------------------------------------------------
ネットキャンサーが自らのトラヒク負担でアポトーシスだと。(藁
死んで当然death。消えて当たり前田のクラッカーだよ。
何?クラッカーじゃなくてハッカー?(プ
UNIX板のノータリンはハッカーとは呼べないだろ。
普段はトゥール・クラッキングでオナってる偽ハッカーのくせに。(はぁと
**********************************
-----UNIX板の連中なんざ、芋虫------
**********************************
みんなで協力してます?ハァ?死ねば?
お前らの発言とも思えないが?(^^;)
偽善と欺瞞、傲慢に独善。自分たちがしてきた行為を
振り返ってみな?胸に手を当ててよく考えろ。
そうすれば、2ch閉鎖が世界のためだと気づくはずだYO!

最後に。UNIX板のプログラマはヘタレ。
お前らの吐き出すコードはムダとバグの塊。
もうママゴト・プログラミングなんてやめたら?みっともないよ。

162 :anony ◆3XTuRnAc :01/08/28 22:58 ID:cmJDCZ/M
>158
感謝!
っていうか、「なんでmirror.pl動かんのじゃー!」とか苦闘してて(汗。
先にindex2.plを動かさんと行けないってのを忘れてました。

ご指摘感謝。いま動いてます>mirror.pl

163 :anony ◆3XTuRnAc :01/08/28 23:02 ID:cmJDCZ/M
あ、すいません、>>162はいわゆる「369」です。

164 :名無しさん@お腹いっぱい。 :01/08/28 23:13 ID:Aid0VNNU
ミラーサーバ案が頓挫しそうな雰囲気ですねぇ。

2chをNNTPに載せるという案を散見しますが、具体的にどうするかという話が
全然出てこないですね。状況は逼迫してると思われるので、急いで実現可能な
方法が必要だと思うんです。NetNewsのシステム自体は枯れているので、それ
をそのまま使うというのは現実的な話だと思います。ただし、現在の2chのシ
ステムをそのままNetNewsに移行するのは難しいと思います。やるとすれば、
2chとは別の、2ch的ポリシーを持ったトップカテゴリを作るというあたりが落
としどころではないでしょうか。

仮に、2ch.* というトップカテゴリを作るとして、これに属するGroupはすべて
moderatedにします。moderatedとはどういうことかというと、投稿した記事は
一旦moderatorにメイルで届きます。通常はmoderatorが検閲し許可した記事を
代理投稿しますが、2ch.* では匿名化のために使います。moderatorに届いた
記事はスクリプトで From: nobody@invalid (名無しさん) みたいに書き換えて
投稿します。

サーバ側に関しては、とりあえず自分のマシンに 2ch.* を作って、OPEN NNTP
として運用を開始し、同時にpeerしているサイトに配送を働きかけます。他に
希望があれば、どことでも無条件にpeerします。

クライアント側に関しては、NetNews用のクライアントを使う必要がありますが、
OutlookやNetscapeが使えるので障害は少ないと思います。Webインターフェイス
が必要であれば勝手に作ってください。

こんな具合で始めたらどうでしょうか。

165 :ガンガン荒らすぞゴルァ :01/08/28 23:16 ID:Y4zr4Mqs
馬鹿プログラマー死ね!!

166 :ガンガン荒らすぞゴルァ :01/08/28 23:19 ID:Y4zr4Mqs
>>161
激しく同意

167 :anony ◆3XTuRnAc :01/08/28 23:20 ID:cmJDCZ/M
えと、ftpサーバーの
incoming/2ch-read-current/
以下に、

mirrortest.tar.gz
mirrortest.doc

というファイルを置いておきました。mirror実験を開始するための
セットと、その使用方法というかつかい方、というところで、
簡単なセットとマニュアルをおいておきました。

なにか間違いとか不備があったら突っ込みお願いします。

168 :天才東大医学部5回生 :01/08/28 23:21 ID:rpp3OriI
>>166
僕は荒らしをしているとは考えていない。
そうではなくて、真実を述べている。

169 :天才東大医学部5回生 :01/08/28 23:23 ID:rpp3OriI
>>167
全般的にカス。コーディング。やめれば?

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
キャッシュサーバーですけど、
ファイルの容量ってどれぐらいになるのですか?
容量によっては走らして見たいと思ってるんですけど。


続きを読む

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

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