人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Xサーバーにおける、PHP(またはMysql)のアクセス数調査を行いたいです。

レンタルサーバーサービス Xserverに設置したPHPスクリプトと、それに連携するスマフォのアプリを作っています。

スマフォのアプリは、サーバー上のPHPを経由して、MySQLに読み書きします。
デフォルトでは、毎秒一回、PHPにデータ読み込みのリクエストを発行しており、
そのアンサーに「次はn秒後以降にリクエストを発行していいよ」というデータを含んでいます。

その「n秒後」をサーバー側の負荷に応じて決定したいのですが、方法が分からずに困っています。
具体的には、PHPスクリプトに対する毎分のアクセス数を記録し、そのアクセス数に応じて「n秒後」を決定したいと思っていますが、どのような方法がありますでしょうか?

現在は、上記の「n秒後」を求める部分以外はほぼ完成しています。

●質問者: katsuwo7720
●カテゴリ:インターネット ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● TransFreeBSD
ベストアンサー

真面目にリアルタイムのアクセス数を取ろうとすると自分でアクセスカウンタのような物を作る事になるんじゃないでしょうか。
アクセス毎にデータベースに時刻を持つレコードを挿入&一定時間以降を消去して件数取得か一定件数以降を消去して最古の時刻を得るか。

ただ、面倒だしちょっと負荷が気になりますので、代替手段を考えても良いかもしれません。
そもそもがサーバ負荷が上がるのを防ぐためですので、代替手段は何がネックになるかによるでしょう。

データベースサーバがネックになるならSHOW STATUSで見てみるか。
http://dev.mysql.com/doc/refman/5.1/ja/show-status.html
http://dev.mysql.com/doc/refman/5.1/ja/server-status-variables.html
Bytes_sent, Connections, Questions, Threads_connectedあたりが指標になるでしょうか。

取得が簡単なのはsys_getloadavgによるロードアベレージ。
http://jp1.php.net/manual/ja/function.sys-getloadavg.php

もしくは/proc/meminfoで空きメモリを見てみるか。
http://www.itmedia.co.jp/enterprise/articles/0803/04/news006_2.html
http://wiki.bit-hive.com/linuxkernelmemo/pg/proc%2Fmeminfo

あと、本当は多分server-status使えると良いのかも知れない。
http://www.arcetri.astro.it/manual/ja/mod/mod_status.html
http://www.hitachi.co.jp/Prod/comp/soft1/manual/pc/d3U1720/EU170055.HTM
ReqPerSecとかIdleWorkersあたり?

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ