雪だるま作戦
概要・目的
実況板を全て同じサーバーに入れよう と言う作戦
(実際には複数のサーバに入れてそれを統合させて負荷を分散する)
1 名前:FOX ★[] 投稿日:1983/02/05(金) 18:53:21
2ちゃんねる全体で 272万投稿/day
1サーバで 50万投稿/day
1,500投稿/min 等を達成した peko 作戦が完了し
いよいよ次は 雪だるま作戦
目標は live系の板を1サーバグループに入れる。
最速1,000スレは15sec以内。
こんなとこかしらん
現状
システム構築中
- 雪だるま鯖(live22x)は物理的には以下の6台で構成されている。
- ファイル読み書きをするバックエンド(live22)
- リクエストを処理していろいろ判断するフロント(live22x1/live22x2/live22x3)
- どのフロントに振り分ければいいか判断する受付係(live22b1/live22b2)
- 書き込みや読み出しのリクエストがあると、まず受付係がどのフロントを使うか振り分け、
フロントがバーボンとかRockとかの判断をし、バックエンドで読み書きする。
それぞれの役割に専念できるようにチューニングしてあるから、以前の実況鯖とは比較にならないパフォーマンスを発揮する。
(たとえば最速1000は、当時単独最強鯖のex10でも40秒台だったのに対してフロント1台の雪だるま鯖でその3倍、フロント3台はさらに3倍の結果を出した)
- 昨夜(2005/12/08)落ちてたのは受付係の2台。
これは片方が落ちればもう片方が自動的に入れ替わって処理を続けその間に落ちた方は自動的に復帰、という動作をするはずなのだが、
どういうわけか肝心の振り分けをするソフトがバグを踏んで死にっぱなしになり、2台同時に落ちる状態が続いた。
この部分は現在見直し中の模様。OSのバージョンとの相性が疑われている。
- 受付係が動かなくてlive22x全体へのアクセスができないというだけだったから、
ユーザ側で直接live22x1〜x3を呼び出せばアクセスはできた。
しかしそれでは自動振り分けを前提としたlive22xとしてはうまく機能しないので、
今は振り分け処理を一時的に中断して、live22xはlive22x1が受付係を介さずに直接担当している。
(結果としてlive22x2/live22x3は遊んでいる)
ついでに snow.2ch.net は雪だるま実験用サーバ(tiger506.maido3.com)
live22x 構成鯖 |
banana403.maido3.com | live22b1.2ch.net | プライマリバランサ |
banana404.maido3.com | live22b2.2ch.net | セカンダリバランサ |
tiger2523.maido3.com | live22x1.2ch.net | フロントエンド1 |
tiger2524.maido3.com | live22x2.2ch.net | フロントエンド2 |
tiger2525.maido3.com | live22x3.2ch.net | フロントエンド3 |
tiger2522.maido3.com | live22.2ch.net | バックエンド |
tiger506.maido3.com | snow.2ch.net | テスト用サーバ |
live22x 構成板 |
live22x.2ch.net/eq/ | 臨時地震 |
live22x.2ch.net/eqplus/ | 臨時地震+ |
live22x.2ch.net/livejupiter/ | なんでも実況(ジュピター) |
live22x.2ch.net/livesaturn/ | なんでも実況(サターン) |
live22x.2ch.net/livevenus/ | なんでも実況(ビーナス) |
live22x.2ch.net/livewkwest/ | 番組ch(西日本) |
live22x.2ch.net/livewkwest/ | 番組ch(西日本) |
live22x.2ch.net/livenhk/ | 番組ch(NHK) |
live22x.2ch.net/liveetv/ | 番組ch(教育) |
live22x.2ch.net/liventv/ | 番組ch(NTV) |
live22x.2ch.net/livetbs/ | 番組ch(TBS) |
live22x.2ch.net/livecx/ | 番組ch(フジ) |
live22x.2ch.net/liveanb/ | 番組ch(朝日) |
live22x.2ch.net/livetx/ | 番組ch(TV東京) |
live22x.2ch.net/endless/ | 実況ch |
live22x.2ch.net/weekly/ | 番組ch |
live22x.2ch.net/dancesite/ | 芸能ch |
live22x.2ch.net/dome/ | スポーツch |
live22x.2ch.net/livebase/ | 野球ch |
live22x.2ch.net/livefoot/ | サッカーch |
live22x.2ch.net/livebs/ | BS実況ch(NHK) |
live22x.2ch.net/livewowow/ | BS実況ch(民放) |
live22x.2ch.net/liveskyp/ | スカパー実況 |
live22x.2ch.net/liveradio/ | ラジオ実況 |
live22x.2ch.net/oonna/ | オリンピック実況(女) |
live22x.2ch.net/ootoko/ | 五輪実況(男) |
live22x.2ch.net/festival/ | お祭りch |
live22x.2ch.net/news/ | ニュース速報 |
live22x.2ch.net/live22tr/ | live22ゴミ箱 |
snow 構成板 |
snow.2ch.net/alaska/ | アラスカ |
snow.2ch.net/snowtr/ | snowゴミ箱 |
チェック
・ファイルの単位
A 板ごとに一つ(1単位)
B サーバごとに一つ(1単位)
...
Z その他
・更新頻度
a たまに
b 1日に1回
c 1スレ立つごとに更新
d 1書きこみごとに更新
...
z その他
(イメージをつかんだいただくための例)
1-A-a SETTING.TXT
1-B-a キャップのデータ(news18, news19を除く)
1-A-d timecount/timecloseのデータ
1-B-d Samba24のデータ
ということで要素を洗い出して、こんなふうに場合わけして、
そのうえで、
一) バックエンドで一元管理しないといけなそうなもの
二) バックエンドにある原本を、ゆっくりフロントエンドに配布すればよいもの
三) 別のところで作ったものを、フロントエンドに個別に配布すればよいもの
...
百) その他
[1-1] 1-A-a SETTING.TXT 二
[1-2] 1-A-b IDを作るための種ファイル 一
[1-3] 1-B-a index.htmlの広告ファイル1 四
[1-4] 1-B-a index.htmlの広告ファイル2 四
[1-5] 1-B-a ●規制用ファイル 三
[1-6] 1-B-a リモホ規制用ファイル 三
[1-7] 1-B-a Rock54用データファイル 三
[1-8] 1-C-a bbspinkのみの広告ファイル 四
[1-9] 1-A-c スレッド立てすぎです、のための記録用ファイル 一
[1-10] 1-A-d timecount/timecloseのための記録用ファイル 一
[1-11] 1-B-a キャップのデータ(news18, news19のみ1-A-a) 二
[1-12] 1-B-c ●でスレッド立てすぎです、またにしてくださいの作業用ファイルとフォルダ 一
[1-13] 1-B-d Samba24の作業用ファイルとフォルダ 一
各種呪文
手動もの
- 復帰系
- レス削除
- 透明削除
- スレ削除
- スレ移動
- スレスト・スレスト解除
- サーバまたぎ移動(もうあるのかな)
- 手動むぎゅ
自動もの
・F22
- dat落ちの際に復帰がかかっている
- いろんなお掃除系
そのほか(実装済み)
・指定したdatをageる => スレッド924で使用
・指定した板のdat数を得る => ごめんなさいリミッターで使用
・指定したファイルをtouchする => キャップのあぶり出しで使用
短期目標
最速 1,000スレは 15sec以内 (達成)
http://live22x.2ch.net/test/read.cgi/livejupiter/1121344385/
次期目標
どんな負荷でも落ちないように強化
連絡のつくスレ
【雪だるま】bbsd⇔各cgi間のI/F仕様について考え・詰めていくスレッド
http://qb5.2ch.net/test/read.cgi/operate/1130482779/
メインで関わっている人
FOX ★、root▲ ★、◆cZfSunOs.U