愛車:マツダアテンザ
Webを中心とした、ビジネス&テクノロジーに関する思いつき
by F-shin
[ このサイトについて ] [ F-shinについて ] [ トップ ]
iPhoneアプリ
author:えふしん
photo_20.jpg
藤川真一について


初代モバツイ開発者
想創社再創業 / KMD博士課程
著書〜100万人から教わったウェブサービスの極意―「モバツイ」開発1268日の知恵と視点 [Kindle版]
お求めやすい夏休み特価!
このカテゴリ[Web系]の最新30件
本ブログは移転しました インターネットの遊び方を身につけよう ネットでの選挙活動と投票率 Web2.0がうまくいかなかったワケ WebにおけるMVCアーキテクチャの勃興と変遷 何故、PCはブラウザ、スマホはアプリなのか。 言っとくけどスマホは退化でもあるからな。 アイコン5000円とか、Web受注(発注)価格について。 残念なWeb論の骨子 HTMLってホントよく出来てるな。 「やまもといちろう×イケダハヤト対談イベント」のログを読んで ネットサービスの成功者は「とりあえず受託」という言葉使うのやめません? 全収集型RSSリーダーの終焉とソーシャル化するWeb 頑張ると報われるプログラマーの社会とは。 Perlが○○な話 アメリカ製品のすごさと不思議とワイヤフレーム どの人件費を考えても絶対にお得!利用規約ナイトがきっかけの本が出ます。 クラウドやモバイルを、もっと仕事で活用したいけど、どうやって会社を説得したら良いかわからない! スマホアプリらしいUXとは。 インターネットの変化に対して起こるモヤモヤすることを考え、整理する活動 Facebookは見なくてもいい情報が出てくるSNS 「あなたは影響力があるから、そんなことを言っちゃいけません」の問題点 Facebookに時間を取られすぎる対策 Paypalの本人確認がむかつく件 ネット系イベントがとても主催しやすくなった件 モバイルファーストが失敗なハズはないが、今はまだ時期尚早 やりがいはソートできない…非情なデータベース社会 2012年までのふりかえりと2013年へ ブラウザという平面の限界 ブログ記事の流通の難しさ
[このカテゴリをもっと見る]
Powered by
Movable Type

May 28, 2008

スポンサーリンク

今抱えている問題。まだ調査中。

セミッターをやっていて発覚したのだが、どうもモバツイのサーバは現状の負荷がギリギリらしい?!

先日AMNのブログ勉強会をセミッターで流していたら、書込フレームが更新できなくなって、同サーバで運用しているF's Garageにもページが表示できないなどの影響がでていたようだ。

よくわからないのが、セミッターを止めた後でもエラーが続いていたこと。ひたすらapacheの再起動などをやっていたのだが、1〜2時間調子が悪かった。

なのでセミッターは気がつく引き金で、実質的にはモバツイの負荷の方がエラーの原因になっているように思える。

PC+横取り丸で見ると、エラーレスポンスなどは一切返っていない。

ので、現状、このエラーが適切に捕捉できていない。


で、これと同じ現象とは言えないが、Apcheのエラーログにセグメンテーションフォルトのエラーが表示されているようだ。

[Wed May 28 07:38:18 2008] [notice] child pid 7326 exit signal Segmentation fault (11)

回数にして1分に1〜3回程度の頻度。連発するときは1分以内に10回ぐらい出ることもある。
URLは複数。共通処理にエラーの引き金があるのか、負荷が高いから起きるのかは謎。

PHPの方で、実行中のプログラムの先頭でプロセスIDをログに出力するようにして、apacheのアクセスログと照らし合わせてみた。

eoLog::log( date("Y.m.d H:i:s"). " " . $_SERVER['REQUEST_URI']." " . posix_getpid());

このリクエストのURLをapacheのログに照らし合わせると、どうやら問題なさげに200 OKが返っているようだ。

またセグメンテーションフォルトのログと、PHPのログの間には10秒から15秒以内のラグがある。

そう考えると、セミッターで経験した「レスポンスが一切返らない」状態とは違うようにも思える。


さらにapacheログで追うと、比較的同じユーザーが前後10秒以内に別のページにリクエストしていることから、

仮説1.エラーが返ったので、すぐリロードしたり元の画面に戻った。
仮説2.このページのレスポンスが返る前に、別のページに移動したことでセグメンテーションフォルトのエラーが発生した?!

PHPのセグメンテーションフォルトについて調べると、携帯サイトではまっている情報がよく見つかる。改善案が今ひとつわからないまま...


セグフォルトについて現在わかってないのが、

・このセグメンテーションフォルトに遭遇したユーザーは、セミッターと同じように「何も表示されない」という状態になっているのだろうか?

・確かに502エラーが出ているという報告は聞く。そんなエラーは一切、apacheログには出ていない。セグメンテーションフォルトとの関連性は?!


携帯ゲートウエイに何もデータを返さなければ、200 OKでも携帯ゲートウエイ側で502になるのかな・・・。もしくは、なにがしかの理由で処理が遅延したから、携帯ゲートウエイ側でタイムアウトしている可能性もある。


ということで、セグメンテーションフォルトと、セミッターで起きた画面真っ白の関連性が見えていないわけだが、セグメンテーションフォルトのエラーは目の前で起きているというところで困惑している状況。

誰か是非アドバイスを....


とりあえず現状のhttpd.confの設定

StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 200
MaxClients 200
MaxRequestsPerChild 0

/server-statusの処理中リクエスト数は、いいとこ20requestぐらいだから、負荷的には全然大丈夫だとは思う。

15 requests currently being processed, 11 idle workers

MaxRequestsPerChildは最初設定してたけど、セミッターで安定しなくなった後に、この値を0にしたら落ち着いたので、とりあえずそのままにしています。


対処としては、PHPのバージョンアップ(今は5.2.4)で直らないか?ってのと、PHPにデバッガーを入れて、より深いところの調査を考えています・・・。


##いい加減、twitter本家のモバイル版の国内対応版出ないのかのう。それで解決するように思えるのだが。


-------------------------------------------
追記:
twitter経由でアドバイスをいただいて、アクセラレータとして入れているAPCを最新版(3.0.19)に上げたらセグメンテーションフォルトのエラーが一切なくなったもよう。

しかも、今まで以上にモバツイが軽くなったような気がします(除くtwitterとの通信部)

zukuさんありがとうございました!!

セミッターのログキャッシュも、CacheLiteからAPCのメモリキャッシュ(memcachedみたいなもの)に変えたので、事態の改善を期待しています。

スポンサーリンク
■同じカテゴリ[Web系]のエントリー
<<前の記事 セミナーを共有するセミッターを作った
>>次の記事 WebSig24/7会議 「ビジネスに繋げるアクセス解析マインド」
■このblogの書き込み最新3件
本ブログは移転しました インターネットの遊び方を身につけよう トトロが陽なら、『風立ちぬ』は陰?〜『風立ちぬ』の感想
この記事への提案、提言一覧
この記事への提案、提言









あなたの情報を保存しますか?