【Love Affair】携帯からのアクセスに対する考察・次の一手 Part3
■ このスレッドは過去ログ倉庫に格納されています
日増しに増加する携帯からのアクセス。 かつて、羨ブラが生まれたように何かが生まれないと ならない気がする。 たぶん解決策は、時間を売って空間を買うだと思うけど いろいろ考察して、次の一手を決めようかと、 Love Affair 作戦。 Part3 シーガーディアン 前スレ 【Love Affair】携帯からのアクセスに対する考察・次の一手 Part1 http://qb5.2ch.net/operate/kako/1075/10758/1075887465.html 【Love Affair】携帯からのアクセスに対する考察・次の一手 Part2 http://qb5.2ch.net/test/read.cgi/operate/1088657713/ Wikiページ http://info.2ch.net/wiki/pukiwiki.php?Love%20Affair 遅くなりましたが、blackgoat3, blackgoat4の準備が整いました。 tiger511 = blackgoat3.peko.2ch.net tiger512 = blackgoat4.peko.2ch.net となります。 それぞれのプライベート側IPアドレスは以下の通りです。 blackgoat3 = 192.168.0.3 blackgoat4 = 192.168.0.4 ということで、従来のblackgoat/blackgoat2からの移行をお願いします。 (移行完了後、blackgoat/blackgoat2はフロントエンド用に転用します) とりあえず、blackgoat1、blackgoat2 → blackgoat3、blackgoat4 に切り替えた。 >しぃ2ちゃんの方々 内部処理だけなのでは、BG設定は今まで通り 1 と 2 でお願いします。 >>10 Wikiにも反映。 ファイルシステム設定はblackgoat2と同じでしょうかね。 とりあえず放置しておいたけど・・・・ >>10 >>11 おつです。 設定は今までのblackgoat1/2と同じです。ccdでストライピング+squid aufs。 さて、次の段階へと。 とりあえずの形(○は稼動中) c代表 & c-others系: ○banana405 banana406 c-au系: ○banana403 ○banana404 banana402 c-docomo系: ○cobra2247 ○cobra2246 cobra2244 blackgoat系: ○tiger511 ○tiger512 BBM/m: ○cobra2245 ということで、banana402 = c-au3を作ろうかと。 >>13 質問。 # たぶん過去スレで既出かと思いますが。 banana405と406で入り口を分散して、docomo/auならば各フロントエンド、 そうでなければ直にblackgoat系なんでしょうか。 >>14 ここのbanana405のところを読んでちょ。 http://mumumu.mu/serverlist.html さて、banana402 = c-au3の準備ができました。 現在器だけがあります。 ということで、中身の設定&動作確認をいただけると助かります。 これから中の人たちにログイン情報をメールします。 今は動作確認用に以下の名前をつけてあります。建設予定地が見えればOK。 http://c-au3.peko.2ch.net/ php_acceleratorを読み込めないみたいです >>15 どうもです、だいたい理解できますた。 これをもとにWikiを書き直してきます。 >>16 たしかに。 中身の転送はしておいたので、 c-controlの修正にいってきますー httpd.confでAllowoverride Indexesしてなかったです。 これでどうかしら。 # アクセラレータ云々は前に出たエラーログが残ってるものかなと。 大丈夫そうなら、ロードバランサでのルーティングを開始するので、 声をかけてくださいです。>中の方々 c-control修正完了ですが、 まだc-au3には配布できません。 c-au3.2ch.netの名前で稼動後、配布可能になります。 >>25 おつかれさまです。 >rootさん、>見習いさん 私のミスで、DNS設定前にコールしてしまったので、 キャッシュ期間中配布できません・・・ しぃ2ちゃんの方々、今しばらくお待ちください。 Wikiにいろいろ反映しました。 鯖リストの説明を仕様としてコピペしときますた。 >>25 とりあえず、OKっぽいので、ロードバランサに組み込んでください。 動かし始めました。 まずはc-au1:2:3 = 1:1:1。 c-au3だけメモリが半分で、プライベート側のネットワークI/Fがfxpではなくvrなので、 とりあえずお試しということで。 不都合があればバランスの比率は別途考えるです。 BlackGoat3 ,4 の役割分担というかその辺も 再度ここで書いておいて欲しいでーす どう分担しているんでしたっけ? それとも 4 は 3が落ちたときのバックアップでしたっけ? >>30 板ごとにBGを設定しています。 目的は、負荷均等化を行っていきます。 また、どちらかが落ちた場合には、手動で生きている方へ振り分けるようにしています。 >>30-31 鯖名と板数でBG振り分け集計してみましたが、貼りますか? (本日9/18 17:00時点) 大体、live系、news系、ex系が1台目になってます。 >>33 c-au3が旧設定のままでした。 今直しました。 そろそろblackgoat1/2をいったんとりこわして、 フロントエンド用に設定を変える作業はじめます。 いろいろあって、おそくなってすんませんです。 なんで、BG3、BG4って同じスペックで同じ設定ですよね。 トラフィック・リクエストがほぼ同じなのにI/Oになんでこんなに差が出るんだろう。。。。 http://mumumu.mu/mrtg/mrtg-rrd.cgi/io/ c-docomo4を作りました。 中の人たちにアカウント情報を送ります。 とりあえずhttp://c-docomo4.peko.2ch.net/ で動作確認ができるようにしたです。 ということで、pekoサーバスレにてDNS登録依頼へと。 続いてc-others2を作りました。 ということであわせて向こうでDNS変更依頼を。 というわけで、セットアップができると到達する体制。 DNSラウンドロビンとpoundによる負荷分散を併用。 1. ユーザがc.2ch.netにアクセス c1.2ch.net(banana405)とc2.2ch.net(banana406)がお出迎え - DNSラウンドロビンを使用 2. UAを見て、c-XXXXXX.2ch.netへリダイレクト - URL書き換えあり 3. c-XXXXXXにいるそれぞれの分散アクセス担当(pound)がお出迎え 4. c-XXXXXXから、c-XXXXXX{1,2,3}等にアクセスを分散 5. c-XXXXXX{1,2,3}が、実際の処理を実施 banana405 = c/c1/c-others banana406 = c2 ですか? >>41 んと、今こうかな。 banana405 = c/c1/c-others/c-others1 banana406 = c/c2/c-others2 banana403 = c-au/c-au1 banana404 = c-au2 banana402 = c-au3 cobra2247 = c-docomo/c-docomo2 cobra2246 = c-docomo3 cobra2244 = c-docomo4 で、 tiger511 = blackgoat3 tiger512 = blackgoat4 cobra2245 = m/BBM か。 現在使われているものだけにすると banana405 = c/c1/c-others1 banana406 = c/c2/c-others2 banana403 = c-au1 banana404 = c-au2 banana402 = c-au3 cobra2247 = c-docomo2 cobra2246 = c-docomo3 cobra2244 = c-docomo4 こうなりますか? c-docomo/c-au/c-othersの名前も使われているです。 こいつらはc-XXXX1のIPアドレスを増やして、つけてあります。 実体はロードバランサー。 c1とc2の名前はユーザに見せないですが、転送量グラフにはついててほしいですね。 聞き方がまずいのかな、 名前が使われているじゃなくて 実際にその用途として稼動しているかどうかという事なんですが、 このへんのしくみは、また機会を改めて詳しく説明する予定です。 基本は >>40 なわけですが、そのように設定したねらいも含めて。 >>47 あ、そういう意味ですか。 であれば、>>45 でよいです。 banana404 = c-au2/c-docomo1 ですよね? >>50 です。 しかし、今はc-docomo1としては稼動させてないです。 c-docomo4終了 引き続きc-others2に移ります。 c-others2も完了 一応、動作もOKっぽいです。 帰宅。これから食事のため外出。 >>37 うーむ、あとでみてみます。 >>55 そうすね。 とりあえず「基本形」ができたということかなと。 >>58-59 おつです。 poundの負荷分散の仲間に入れました。 お疲れさまです。 携帯関連の調整で、bbs.cgiを更新しました。 よろしくお願いします。 >root ★さん >>61 live8/16/17のバイナリ版bbs.cgiを更新しました。 コチラも上げておきます。 BG4のプロキシが死んだようなので 只今BG3が一手に引き受けています。 >>64 blackgoat4のプロキシサーバ(squid)を復活させました。 また、blackgoat4だけ実験的にdaemontools配下で動かすようにしてみました。 (落ちにくくするためのテストで、外部的な設定変更は必要ないです) >>65 :root氏 復活ありがとうございます。 無知ですいません。 それって再設定不要って事ですか? 鯖に詳しい方、教えてください。 trafficが無いみたいですけど。。 http://mumumu.mu/mrtg/mrtg-rrd.cgi/loveaffair/ >>66 説明が足りずすみませんです。 設定を元の状態(BG3とBG4の両方を使う状態)に戻せるようになった、ということです。 内部的なもので、フロントエンドからの 見え方が変わらないと、理解して、 リクエストを、BG4に戻します。 >rootさま お返事ありがとうございます。 作業完了致しました。 定額制ではないとはいえ、やっぱりアクセス傾向が増加するんでしょうね。 ttp://ascii24.com/news/i/net/article/2004/10/06/651898-000.html ttp://k-tai.impress.co.jp/cda/article/news_toppage/20863.html で、各クライアント側もLAとか監視している限りでは、特に問題ないかと。 アクセラレータのソフトウェアを更新してから、 PHPの挙動がおかしくなることもなくなったもより。 http://mumumu.mu/mrtg/mrtg-rrd.cgi/load/ c-docomo系で、URLリルート機能のテストをはじめました。 例えばc-docomo系でnewsplusにアクセスすると、 http://c-docomo.2ch.net/test.php/-/newsplus/i となりますが、今まではこの場合他の携帯からは上記URLにはアクセスできませんでした。 (人大杉に飛ばされる) 今回、UAを見て適切なものに飛ばす記述を加えました。 例えば上記URLにauの携帯からアクセスした場合には自動的に http://c-au.2ch.net/test.php/-/newsplus/i に案内され、AirH"やVodafone、あるいはPCからだと自動的に http://c-others.2ch.net/test.php/-/newsplus/i に案内されるはずです。 これで、URLを貼る場合等に楽になるはず。 P.S. 上記と関係なく外からリンクを張る場合には、例えば上記の場合 http://c.2ch.net/test.php/-/newsplus/i に張っていただけると助かります。 >>76 はしばらく様子を見てうまく動くようなら、他のc系にも順次入れようかと。 >>78 以前から不動楽さんに指摘されていた宿題にようやく手をつけました。 おそくなってすまそです。 うまくいっているようなので、 今日寝るまでに、auとothers系にも同様の設定を入れておきます。 振り分けはどのような仕組みでやっているんでしたっけ? 振り分け = c-au1 c-au2 c-au3 に振り分けること >>81 ロードバランサーと呼ばれるソフトウェアを使っています。 最初はpoundというのを使っていたのですが、メモリリークがあって 2週間ぐらい動かすとプロセスサイズがでかくなっていたり、たまに暴走して 無反応になっていたりしたので、balanceというやつに変えました。 こいつはとってもシンプルですが、必要十分な機能を持っています。 (続く) balanceの起動はこんなかんじです。 balance -b IPアドレス -B IPアドレス ポート番号 ホスト名:ポート番号 [ ホスト名:ポート番号 ... ] 以下はc-docomo系の例です。 daemontools配下で動かしてるので、foreground起動のオプションを追加で入れています。(-f) balance -b 206.223.151.216 -B 206.223.151.216 -f 80 c-docomo2.2ch.net:80 c-docomo3.2ch.net:80 c-docomo4.2ch.net:80 これで、 ・-bで指定されたIPアドレスにbind()して、 ・-Bで指定されたIPアドレスをFrom:アドレスとして使い、 ・port 80に来るリクエストを、 ・c-docomo2/3/4のport80に、ラウンドロビンでフォワーディングします。 balanceには必要以上の機能は入ってないので、c-auでは以下のように指定して、 2 : 3 : 3 のバランシングを実現しています。 balance -b 206.223.150.96 -B 206.223.150.96 -f 80 \ c-au1.2ch.net:80 c-au2.2ch.net:80 c-au3.2ch.net:80 \ c-au1.2ch.net:80 c-au2.2ch.net:80 c-au3.2ch.net:80 \ c-au2.2ch.net:80 c-au3.2ch.net:80 (続く) で、balanceはたまに変なロックファイルが残ることがあるので、 daemontoolsのrunファイルで、以下のように指定しています。 /var/service/balance/run の内容 #!/bin/sh exec 2>&1 rm -f /var/run/balance/balance.80.206.223.151.216 exec env - PATH="/usr/sbin:/usr/bin:/bin:/usr/local/bin" \ balance -b 206.223.151.216 -B 206.223.151.216 -f 80 \ c-docomo2.2ch.net:80 c-docomo3.2ch.net:80 c-docomo4.2ch.net:80 以上っす。 ということで、 携帯 <=> balance @ c-docomoのIP <=> httpd @ c-docomo1/2/3 という形で通信しています。 この状態なので、c-docomo2や3が落ちても、サービスには影響ありません。 (c-docomo1は現在c-docomoと同じホストなので、落ちるとc-docomo系はまるごとストップ) あ、>>85 は c-docomo1/2/3 を 2/3/4 に読み替えてください。 なるほど、、、 ロードバランサーっていうくらいだから 各サーバの負荷の度合いが振り分けのきっかけと 理解していいのかな? もともとの疑問は c-au1 だけ転送量が大きいから どうしてだ? と思ったんです。実は c-au=c-au1 だからなんですね、 あっ 違うか >balanceには必要以上の機能は入ってないので、c-auでは以下のように指定して、 >2 : 3 : 3 のバランシングを実現しています と設定しているんだから、設定者の勘か、 >>87 そうです。< c-au = c-au1 c-au1はロードバランサそのものの負荷がばかにできなくなってきて、 先日、処理するクライアントの比率を少し下げました。 負荷分散のチューニング、サーバ追加時の容易さ、 子供サーバダウンの際の影響の少なさ、とかですかね。 < メリット DNSによるロードバランシングと比べると、 ・信頼性の高いものが1台で済む ・比率を細かくチューニングできる といったところがメリットで、 ・親が死ぬと全部死ぬ が、デメリットだと思います。 balance2つをDNSロードバランシングして、 その下に子供をぶら下げるとかすると、結構いいかんじなのかなと。 c-au1 , c-au2 , c-au3 に比べて c-au(balance) だけの負荷はネグれるくらい、 つまり二桁以上少ないと考えていいのかな? そうでもないのかな、、、 実体験するしかないか、 >この状態なので、c-docomo2や3が落ちても、サービスには影響ありません。 ということは balance 側は自動的に落ちたサーバには振り分けないように 動くという認識でいいのかしら? >>90 最初はそうでしたが、このところそうではなくなってきました。 1 : 1 : 1 だと、c-au/c-au1 だけ負荷が上がってしまう。 パフォーマンス的にはまだ大丈夫でしたが、 とりあえず同じぐらいのLAになるように、 2 : 3 : 3 にbalanceの設定を変えたと。 c-docomoは今のところまだ大丈夫ですが(Cobraだし)、 よく見ると、c-docomo2 (= c-docomo)だけ LAが少し高めのようです。 >>91 です。切り離しは、勝手にやってくれます。 manするとtimeoutはデフォルトで5秒の模様。 t Connect Timeout: the default timeout trying to establish a con- nection to any destination can be changed using this option. The default timeout after which a destination is regarded to be cur- rently inaccessible is 5 seconds. おまけ よくやるのは、プライベートのアドレスを使ったネットワークを作っておいて、 1台〜数台のサーバにEthernet I/Fを2つ入れて、 バックエンド側にサーバをいっぱいぶら下げる、っていう構成すね。 客 | v + F +-+-+-+ B B B B で、Bはブレードサーバだったりするです。 ここのスレのアドレス調べられるツールみたいのあるの?調べる機械みたいのあるの?それつかうと番号かアドレス調べる事が出来るって聞いたんだけど教えて下さい。 F = Front B = Back だと思うけど v は balance ? >>97 客からのリクエストを表してます。 ↓のほうがよかったすね。しつれい。 ということで移動。 今のところScopeはc-othes系にルーティングされるですね。 現時点ではc-others系はゆとりあるので、とりあえず静観かなと。 漫画板の携帯の表示をなくしてほしいです 懐かし漫画や週間少年漫画板はなんでもないのにあんまりだ マーキングでわかったこと。携帯から糞スレ広告スレ立てる香具師がいるということ。 そうそう立つもんでもないと思うが… http://hobby7.2ch.net/test/read.cgi/phs/1106406399/1 05/01/23 00:06:39 ID:K9TjBo0ZO http://hobby7.2ch.net/test/read.cgi/phs/1106392086/1 05/01/22 20:08:06 ID:ezS2CfIVO 下みたいなやつは広告の報告スレに持っていかないと。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる