Neo Inspiration

Feed Rss

今年は飛躍の年でした!
技術的には半分PHP、半分FLEXってかんじでしたね。
まあFLEXで作ったSEOツール系はだんだんPHPに置き換わっていますが。
あと、諸事情でVPS系10台近く、専用サーバ、クラウドなどサーバ周りをめちゃくさ触った1年でした。
そういうの嫌いで前職やめたんですけどね。。

ってことで毎年恒例WEB履歴

去年:総検索回数:10888
今年:総検索回数:10410

1月:1032
2月:828
3月:735
4月:742
5月:1165
6月:1340
7月:970
8月:824
9月:727
10月:826
11月:724
12月:497

トップサイト

livedocs.adobe.com

とうとうトップ10にhatenaもphp.netも入らなくなった。。
前者は時代を感じるし、後者は成長を感じる!

ということで、今年1年お疲れさまでした!

FLEX、PHP、その他もろもろでランキングチェックツールを構築したわけですが、
最近やっと安定稼働になったので、そこらへんのメモ。

サービスの規模

・現在のワード数:1500前後
→通常のツールと違って、全SERPSを取得してさらにキャプチャも取得するので、
 google,yahooへのアクセス回数は大体普通のツールの7-8倍。
 (なのでGRCとかフェレットとかでいったら12000キーワードくらいまわしてる計算)

・URLのチェック件数:1600前後
→同時に競合調査とかもできるようになっているので、ワード数よりちょっと多い。

この規模感です。大きいような小さいような。
まだ稼働して1カ月で個の規模は大きいというべきか。。。

ハードウェア的には

VPS4台という笑えない状況w
大体400ワードを1VPSで裁いてる感じです。。

HDD的には

キャプチャ含めて1日分のSerpsは大体3GB↑
1か月分保存するだけで、100GB近くになる。
HDDはいくらあっても足りない状況。

現在は前月分以外はtar.gzにしてローカル保存。
スクリーンショットとかの関係で、
DBに入れず全部ファイルにしてたのがあだになったかも。。

CPU的には

余裕すぎ。というかほぼ回線とHDDのためにVPSを分散させてる状況。

回線的には

1ワード10件表示で、100位までをGとYでやるので、20アクセス。
それが1500ワードなので、3万アクセス
それを4台で賄っているので、1台あたり7500アクセス。
こんなの普通にG,YにアクセスしたらDOS攻撃になっちゃうので、
それを24時間で分散してアクセスしてます。
ちなみに最低7.5秒は感覚あけないと、Googleはすぐに弾いてきますので、
24*60*60 / 7.5 = 11520ってことで、
MAX1万ちょっとくらいしか1サーバ(てかIPかな)からはアクセスできない感じです。
Yahooはたぶんそこまでチェックはしていなっぽいです。

その他

・なぜかVPS経由のIE8相当のアクセスだと、
 ロケーション取得が日によってかなりばらつきがあって、
 ある日は渋谷、ある日は目黒、ある日は愛媛、ある日は鹿児島
 みたいな感じで、ばっらばらになります。

・HDDが一杯になると、VNCがつながるけど、画面が真っ黒なままなんだと初めて知りました。

・改めてランキングチェックツールの大変さがよくわかりました。。。

・とりあえず普通のランキングツールと違って全Serpsが手元にあるので、
 分析し放題なのだけはメリットなのかな。

Ver0.94 にアップしました。

変更点は
・GoogleCalenderへの登録を終日でしかできなかったのを時間指定でできるように

EvernoteでTodo管理するアプリ

Flexで時間指定まで含めたUIを考えるのはちょっと頭を使いました。

Flex Date and Time (datetime) Picker Control

結局ここを参考にNumericStepper2個を時、分に適応させてやりました。
本当はもっとスマートな形がいいんでしょうけど。。

わざわざセキュリティリスクを上げるプログラムを書くとかどうかしてると思うけど。。

セッションハイジャックのために
session_regenerate_id(true)を書くと
リンクをダブルクリックしたときに高確率でセッションが切れるようになります。
たぶんセッションを保存するI/Oのあたりなんじゃないかなぁと思いますが、
さしあたってこれでは色々と支障をきたすので、
こちら側で session_regenerate_idのタイミングをコントロールしなければなりません。

でこんなかんじ。

//ログインするときexpireにtimeをいれてく
$_SESSION['expires'] = time();

//セッションのページを開くたびにこんなかんじ。
if ($_SESSION['expires'] < time() - 8) {
    session_regenerate_id(true);
    $_SESSION['expires'] = time();

}

わざわざこんなこと書かないといけないなんて・・
なので、セッション使うなら、
ハイジャック対策は別の方法でやるほうがいいのかもしれないですね。
やり方わかりませんが。

Ver0.93 にアップ

変更点は
・地味なボタンをちょっと鮮やかなアイコンに変更
・Google CalenderにTodoを送れるように
・あと細かいけど、クリックするとリザイズできる範囲をちょっと広げました

EvernoteでTodo管理するアプリ

余談ですが、GoogleCalenderの設定はめちゃくちゃ苦労しました。。