【Love Affair】携帯からのアクセスに対する考察・次の一手 Part2
■ このスレッドは過去ログ倉庫に格納されています
日増しに増加する携帯からのアクセス。
かつて、羨ブラが生まれたように何かが生まれないと
ならない気がする。
たぶん解決策は、時間を売って空間を買うだと思うけど
いろいろ考察して、次の一手を決めようかと、
Love Affair 作戦。
Part2 大黒埠頭
前スレ
【Love Affair】携帯からのアクセスに対する考察・次の一手 Part1
http://qb5.2ch.net/test/read.cgi/operate/1075887465/ ・ 3 人娘を単なるクローンにする。
・ c.2ch.net はシリアル番号(機種固有番号)からランダムにいずれかの 3 人娘を呼び出す。
→ランダムなので純粋に負荷が 3 等分されるのではないか?@帯域、負荷
○ 現状 3 人娘はそれぞれ違う処理を行っている?
→ HTML, HDML, MML, XML と違う出力にしているならば、
その部分を切り離して UA でそれぞれ振分けてパイプ処理で変換させるとか?(nkf みたいな pod2html みたいな) >>203
単に負荷を3等分する、というのは前にも少し考えました。
今でもpoundで簡単にできるけど。やってみますか?
後者は、中身の重そうな処理がどこかを調べることになるのかな。 c-docomo の挙動
http://mumumu.mu/mrtg/mrtg-rrd.cgi/access/c-docomoaccess-day.png
これが c-docomo に襲い掛かっているアクセスである。
48hの推移を見ると三つの部分に分かれている
1) 最初の3kくらいのところ → DISK i/o が率速だった
2) 5k 位の平坦部 → 10Mbps の帯域制限が率速だった
3) 10k - 25k を乱高下 → 純粋に襲い掛かっているアクセス?
と考えていいんだろうか、実はどこかに別の秘密が隠されているのだろうか、
解せないのは、 3) が本来のアクセスならばなぜ 1) 2) が平坦になり乱高下が
観測されないんだろう。
>>204
だめだめ、ここからもしかしたら確信なのかも知れないから
台数増やすのはいつでも簡単に出来る一番安易な方法です
また、今の目標はそこにはないです。 >>204
c-docomo を軽くしようというのは目標ですが
絶対に他のキャリアとまぜないでください
勿論、au もですけど、
せっかく分けて、分析しているのですから、 簡単に言えば
「台数増やす → 軽くなる」は既に解っている解決策ですから
実験する必要は全くないと思います。
平均化も台数増やすと同じことです。 >>205
> 3) 10k - 25k を乱高下 → 純粋に襲い掛かっているアクセス?
転送速度も絡んでいるのかもですね。
c-docomo 内部では処理が終わっているのに、なかなか全部受取ってくれていないとか。@mova類
あと気になるのが鯖名。4xx 台ってば httpd のエラーコードなんですよねぇ(^-^) >>205-207
了解です。物量以外の知恵で。
ccdによるストライピングにしてもそういうことでひねり出したわけで、
(これでディスクI/Oのキャパが2倍近くになった)。
で、乱高下は「その時の限界ぎりぎりまで資源が使われた場合」にこうなるようです。
でも、限界だと思っていたのが実は限界ではなかった、ってのを
既に何度も経験しています。
というか、弱いマシンでやらないと、弱点も見えてこないものです。
強いマシンだと詰めが甘くても、動いてしまうし。
このへんの「苦しいマシン環境での力のしぼり出し」は本業的に昔取った杵柄なので、
(もう何年もやってないけど)もう少しがんがってみようかなと。 ロードアベレージで負荷を見ているわけですが、
LA 高の原因は単純に言って
入ってくる量 > 完了する量 なわけです。
つまり処理が完了する量に注目すれば(動かすことの出来る項だと仮定すると)
どんどん完了すればいいわけです。
なぜ完了しないのか?
c-docomo が完了できないのか
呼び出し側が完了してくれないのか。。。 >>210
見ている限りでは、c-docomoが完了できないように見えますね。
常にhttpdがCPUを食っていて、とても多忙に見えます。 一つの呼び出しを処理するのにかかる平均時間というのは計測できるんですかねぇ
docomo の場合
au の場合
その他の場合
で知ることが出来たら、何か出てくるかも、 >>211
>c-docomoが完了できない
と原因を仮定すれば、どこが問題ななんだろうか?
1) CPU 性能?
2) RAM 不足?
3) network ? or その他?
何を見たらそう断定できる?
また解決すればどれくらいの効果が見込める?
逆に、ハードは変更しないとしたらどんな解決方法があるか?
あくまで仮説ですけど定額制端末に焦点を当てると違いは転送速度です
のでそれが処理の遅れになってるかもしれませんね
FOMA 最大384K
AU(WIN) 最大2.4M >214
非定額の場合でも大きな違いがありますよ(^_^;)
Docomoの主力の5xx&2xxシリーズは9600bpsだったはず。
auの主力の1xは144kbpsだったかな?
詳しい人フォローよろしく。 ちょっと疑問というか不思議なのは
当初、au : docomo : others = 4:5:1.5 という計測結果があって、
その上でいろいろ進めてきたわけですが、
http://mumumu.mu/mrtg/mrtg-rrd.cgi/access/
を見ると 4:10:1.5 に見えます。
どしてこんなに docomo の比率増えたのだろぅ
うーむ疑問だらけじゃ >>214
いくら携帯2chユーザのWIN率が高いって言ってもWINを基準にはできんじゃろう
FOMAも同じく
mova 最大 28.8kbps (505i以降)
au 最大 144kbps でも、よーわからんのだけど、ネットワーク速度がボトルネックなってる場合
1 コネクションが足りなくなって、エラーを返す
2 コネクションを開放できなくてメモリが不足してスワップが起こってLAが上がる
のどっちかになるんでないのかな?(^_^;)
現状、LAが高いんだから1ではないわけで・・・・ >217
あ、28800bpsまで上がってるのか(^_^;)>5xx,2xx >>216
i => cの誘導を開始してから、DoCoMoの比率がかなりの勢いで上がった気がします。
あと、深夜はドコモの比率が高いような。他が少なくなるだけなのかもしれませんが。 >215,217
非定額でも転送速度の差が結構ありますねぇ
転送量が少なくてもユーザーが一杯いれば僅かな差も塵も積もれば何と
やら状態って事ですかねぇ >>213
いまのところ、1)に見えますね。
メモリ不足には見えないです。
ただ、プログラムの「つくり」とか、システム(カーネル)のチューニングで
相当改善できるような気がしていたり。
で、クラシックメニューの場合画像とかはないので、携帯相手でも
転送そのものはそれなりになんとかなっているようです。
netstat -mで見ると、Send queueにデータがたまっている
(送っているが携帯が受け取ってくれない)ものはほとんどなく、
TIME_WAIT(携帯側が待っている)ものがどっさりある状態。 c-othersの今日17時ごろへこみは、私がちょっとごそごそしたせいです。
あらかじめ。 一回本当の各キャリアのアクセス数を取りたいですね。 >>255
ほほぅ なるほどです、
ちと 考え中。。。
ちなみに、docomo を二つに分けるとしてどんな分け方あるですか?
今までと同様 IP で振り分けたいのですが、 >>228
今振り分けはIPじゃなくて、携帯が名乗ってくるUAでやっています。
もちろんIPでもできるけど、今はまだやってないです。
もう1台投入した場合、二つやり方があります。
DNSで自然にラウンドロビンさせるやり方と、poundを使ってロードバランシングするやり方。
DNSで自然にやるのは、同じ性能のマシンがいっぱい来るときはシンプルでいいです。
poundだと、こっちに1/4、向こうに3/4とかいう決め細やかな制御ができます。 おのおののphpスクリプトから、その鯖のキャリアと関係ないキャリアに
対応したスクリプトをばっさり削除するってのは?
docomo専用クラシック、au専用クラシック、とか >>230 続き
DNSの場合: c-docomo.2ch.netという名前に複数のIPアドレスをつける
poundの場合: 設定で振り先のマシンを変える
いずれも、ユーザ側には同じURIをみせることができます。 >>230
平均化とか、それを目的にやるのじゃなく
折角のチャンスだからいろいろデータを取って
あれこれ研究するのが目的ですー
つまり 分け方の一例としては
1) 回線速度 a 低速 b 高速
等でわけたいのです。
何か他に分ける方法というか物差しありますかねぇ? >>233
例えばFOMAはこっちでPDCはこっちってかんじですね。
それなら、UAで見ればいけるかなと。
あとはなんだろう。< 分け方 http://www.nttdocomo.co.jp/mc-user/i/spec/useragent.html
DoCoMo/1.0 → mova
DoCoMo/2.0 → FOMA
これは個人的におもしろそうなんで統計とってほし 次の一手は・・・
1) peko 機を移動してこのLANに接続
2) c-docomo を peko 機でそのまま運用(まだ分割しない)
3) これで CPU がへたれかどうかが検証できるはず !?
懸念されることは c の機能がそっくりそのまま改造することなく peko で動くか
かな? >>236
こないだまでcomic4(cobra2246)で動いてました。< cの機能
あのときはLA=50ぐらいで、全部のキャリアを受けてたかな。 DOCOMO/AU/otherの振り分けは間違いなくできてるという前提で
LAでなく接続端末数はどうなっているのだろう
待ちプロセス多数でメモリが足りないなら接続受付数の調整で変化出てるとは思いますが この間のcobraでは送出待ち多数な状況でしたねえ(接続数とか処理周りに違いはあるけども)。
docomoとauはcobraが必要なんすかねぇ… まだ出ていないようなので、浅知恵で意見致します。
DoCoMoとauの大きな違いは、
端末でキャッシュするかしないかだと思いました。
それから、端末って、ちゃんと「処理完了」のお返事してるのでしょうか?
その辺は解決済みですか? httpd -F on tcpserver という手も残されているのかな?
実験してみたところ、無駄に風呂敷(メモリ)を広げずに動いているみたいです。StartServer も無視。
接続数なども tcpserver 側で制限できるので(-c)、その分 httpd のお仕事も減らないかなぁと。
>>241
TCP レベルのお話かな?@処理完了のお返事 続けて失礼します。
キャッシュがあると、
1.リクエストの間隔が長くなる、
2.一度のデータが大きくなる、
と思います。
誤差程度かもしれませんが、一応書いておきます。 >>242
どの階層かは思い付きませんが、その辺です。<TCP >>220 docomo2xx、5xxは下り28.8、上り9.6じゃなかたっけ。
ttp://k-tai.impress.co.jp/cda/article/showcase_top/16825.html
そーすっと。ここらへんも関係あるかも。 >>247
5xx全てが28.8Kでは無い。
504以降から28.8Kだったっけ
詳しくは知らん。 鯖負荷を見ていたら、c-docomoとc-auがパンク状態でc-othersがガラガラ
一応、c.2chの機種別総合アクセス統計が必要かも…。
・D(FOMA/mova)
・au(cdmaOne&CDMA2000/WIN/TU-KA
・v(V6&J5/V8)
・PHS(AirH" PHONE/PALDIO brouserphone/ASTELドットi)
てな感じで…。 >245 そうですね。
ADSLみたいに非対称通信といいたかったわけで。 一台増えるけど、
squid---c-docomo---黒山羊
の三段体制とかは?
squidとc-docomoは同居でも良いと思うけど。。 >>248
28.8k対応:
50xは504以降。
25xは252以降。
21xは該当無し。
6xxも該当無し。 >>251
これ以上の鯖増設は携帯ユーザーの資金でお願いします。 TCP/IP 28.8k/9600
2ch鯖 ------ GW ----- パケットの制御装置とか ----- 基地局 ------ 端末(数千万台)
この構成でTCP/IPの所まで基地局−端末間のスピードで通信してるとは思えないです。
多分どこかでバッファリングしてるはず。 今の状態を見る限りキャリアの問題とは違うんじゃないかな?
auもdocomoもほぼ同じアクセス数で同じような負荷 >>241に関連したことですが・・・・
「携帯電話は移動する」 → 電波状況が悪くなる → 強制切断
・・・で、「2chからのデータが完全に送信完了されない」ために
ゴミが溢れるということは考えられないですか? ついでですが・・・・
FOMAに限って言えば年末あたりにパケット定額料金の契約者に限定して
ネットワークの混雑状況に応じて個別に帯域制限をかける予定らしいので、
そのことで2ch鯖→FOMA携帯へのデータ送出が詰まりやすくなることも
懸念されてくるような気がしますです。 各キャリアの公式メニューに載せて有料にしちゃえよってのはガイシュツ? >>253
それで正解にしよう。
これ以上巻き添いは拙いだろう。 携帯からの接続に課金してたんじゃないのかよ!
最初はそういう話じゃ無かったか?
いくら鯖増強したって、保つわけないよ。 有料でも快適に利用したいという希望者用に●専用鯖併設というのは? 今ここはそういう話をしてるんじゃないんです
しかもおまえら全部既出 そういえば、3 人娘の Apache がまだ 2.0.49 のままですよね。@メモリリークの件 サーバのチューニングも大切だけど、PHPを使うのを
やめるのもひとつの方向性かもね。
全部のスクリプトを変えなくても、一部の重い処理だけを
バイナリ化するだけでも全然違うだろうし。 >>267
64bits 環境じゃないので関係ないですね。m(_ _)m >>268
プログラムの保守性や開発のしやすさとの兼ね合いもありますね。< PHPをやめるかどうか
個人的には、PHPを少なくとも全面的にはやめないほうがいいかなと思っています。
圧倒的にCPUを食っているのがhttpdなので、
PHPの処理であることはほぼ間違いないですね。
あとは「どの」処理に最もコストかかっているかの見極めかと。 ちょっとだけAPC(無停電電源じゃなくてPHPを高速化するモジュール)をc-auでためしてみたけど、
あんまり速くならない模様。
これでZend optimizer, PHP acceralator, APCを試してみたけど、
フリー物ではPHP acceralatorが一番(しかも、相当)いいみたい。 さきほどc-othersとc-auで呪文を唱えました。
c-docomoでも機を見て唱えてみる予定。 >>272 は「効果があれば」の話です。
しばらくはc-auで様子をチェックで。
内容は >>271 をもう少しまじめに設定してみた、ということで。 PHP用プロファイラって無いの?
PHPじゃtruss/traceしても仕方ないか きたく。
>>274
プロファイリングはしたいところですね。
このへん(PHPのプログラムでどの処理が高コストなのかを調べる)は、どうやるのがいいんだろう。 >>275
> このへん(PHPのプログラムでどの処理が高コストなのかを調べる)は、どうやるのがいいんだろう。
勘で。 あんまり効果ないっすね。設定が悪いのかもしれないけど。
いちおう、shmモードで動かしてみてました。
php_acceralatorと一緒に動かしたり(さっきのc-others/cのダウン)、
apc.optimization = 1
を入れたりすると恐ろしいことになる(今しがたのc-othersの急激な負荷上昇)ので注意。 前からの問題だが、c-auとc-docomoの鯖負荷が物凄い。
i.2ch時代はそれぞれの鯖でcgiを叩いて負荷が分散されたが、
c.2chでは中間鯖を経由してdatを読む、それに呼び出しが殺到な感じ。
機種別統計の必要性が感じられる。 ということで、さきほどphp_acceleratorに戻しました。< c-au/c-others >>279
参考までに昨日のログでアクセス数を調べてみるかな。 game6と同じ問題があるかもしれない(高負荷時には統計取りの負荷もばかにできなくなる)ので、
アクセス統計の取り方を変えてみよう。
それまで、少しアクセス統計とるのをおやすみ。< c-au/c-docomo 統計とめてしばらく見てるけど、まさに焼け石に水だなぁ。 それでも働き続けている彼女たちは健気ですよね。@ 3 人娘
でもってもしかして、素敵な淑女達でやるよりも、
幼気な少女(低スペック+低帯域)を何十人と集めて捌いた方がいいのかな?@キャンディーズよりも娘。みたいな(w こんなのあった。とりあえずメモ。
これで板カテゴリを出すところとか、相当にキャッシュできそうな予感。
キャッシュデータをMySQLで管理するのにも対応しているし。
http://www.jpcache.com/
サーバ側のセットアップ(まだやってません)の後に、プログラム側の書き換えも必要なのか。 プロファイラと言うよりデバッガなのかな?
ttp://inagi.himitsukichi.com/~aozora/cgi-bin/pukiwiki/pukiwiki.php?xdebug%A4%F2%BB%C8%A4%C3%A4%C6%A4%DF%A4%EB root ★さーん
cobra2247 のセカンドポートがLANのスイッチにつながったという
未確認情報がきましたー >>287
これから確認します。
で、OKなら、
cobra2247のセッティング変更・掲示板バーチャルホストのmemoriesへの移動などをすすめます。 接続されていますね。192.168なアドレスをつけました。
セットアップ作業にはいります。 c-au or c-docomo を 分割じゃなく全面移行で、
私としては c-au だけど、
実験を目的とするなら c-docomo ですかねぇ >>290
c-docomoですかね。
cobra2247はdual channelのSCSIですが(peko仕様)、
両方が同じチャンネルに接続されています。
他のpeko同様に別のチャンネルにわけてもらったほうがよいので、
これは別途すすめます(メールはCc:します)。
etc2 society2 food5 の内容をmemoriesに転送中。
この後別スレで変更の儀式の予定。 今回の目的は
CPU パワーがあれば解決するの?
yes /no でーす >>292
了解。
それだと、PHPアクセラレータが使えるi386モードがいいのかな。
あ、i386互換モードで動かせばいいのかも。
いずれにせよ、まずはできることをやってみましょ。 >>291
乙です。
先に移転した分↓についてもmemories入りをよろしくお願いします(念のため)。
etc2→life6(body hikky mental psy sousai utu) >>294
すべてホームディレクトリをまるごと移動しました。
>>295
おどしですか(w。 bananaとpecoのCPUの性能の差をいよいよ見られるわけで まじにわくわくです お店からですかね・・・>狐さん
http://tmp4.2ch.net/test/read.cgi/mog2/1089018804/
363 名前: ◆BDFCNV1.to 投稿日:04/07/07 20:30
さてさて、
ダダダダダタッ
クラシックさん and/or ◆BFzK/mtqM2さん、いますか。
新c-docomoの準備ができました。
c-docomo.peko.2ch.net という名前を一時的につけてあります。
アカウント等の設定は現c-docomoと同じです。
中身を入れ込んでくださいです。
c-docomoから転送しようと思ったけど、重い重い重い重いでだめぽでした。 >root★さん、
いますよーん
>◆EA.clAssIcさん、
c-othersのでいいんだよね。
>>302
裏口も含めて設定済みですので、同じものでよいはず。
準備できたらここで知らせてくださいです。 ■ このスレッドは過去ログ倉庫に格納されています