300万アクセス達成!




報告が遅くなってしまいましたが5月22日に当サイトへのアクセス総数が300万に達しました(涙)
20080615-01.jpg
2001年11月12日 サイト開設
2005年06月05日 100万アクセス達成(1303日目)
2006年11月17日 200万アクセス達成(1833日目)
2008年05月22日 300万アクセス達成(2383日目)
**2003/11/27から連続更新継続中(1662日目)
いつも訪問してくださる方々に感謝します。これからもみなさんの応援よろしくお願いします m(_ _)m
                  アクセス数のデータは次の方法でバックアップします↓


アクセス数はトップページ左上に配置しているカウンターの値を定期的に記録して統計しています。このカウンターはすごく単純なスクリプトで動作が軽いのが気にいってます。しかしアクセスが集中するとたまに(年に1~2回ほど)カウント数がゼロになってしまうことがあります。ファイルロックとか複雑な事をしていないので仕方ないのですがこれでは困るので5分毎にカウンター値を監視して問題があれば直前のバックアップからデータを戻すcronを組んで対処しています
問題が発生してカウンターがゼロになってしまうとデータファイルall.datの「昨日の訪問数」が0になるのでこれを監視します
正常時のデータ例:(左から日付、昨日のアクセス、本日のアクセス、総数、直近訪問のIP)
20080615|1680|793|3043633|???.???.???.???
問題が起こるとデータがこんな感じになります
20080615|0|3|3|???.???.???.???
↓のようなシェルスクリプトを組んで、サーバーのcronで5分毎にこのスクリプトを自動実行させます
#!/usr/local/bin/bash
export TZ=JST-9
# 昨日のアクセス数が0になっていないかどうか調べます
YesterDay=$(cut -d’|’ -f2 all.dat)
if [ $YesterDay == 0 ] then # データが壊れているので直近バックアップでデータを上書き
cp backup/all.dat all.dat
# 問題発生の日時を記録
date >>failed.log
else
# 問題無いので現在のデータをバックアップ
cp all.dat backup/all.dat
fi