Google Maps APIが仕様変更してた

朝起きたらmap.rails2u.comが動かなくて焦った。GoogleAPIみたく一日1000回制限は無いはずだし、なんでだろーと思って原因を探ってみた。
いままではGPointの引数にStringで文字列の数値を渡しても正常に通ったのだけど、現状では"too much recursion"とエラーが出てしまう。そこでparseFloatを使ってFloatへと型変換して渡したら正常に動くように。
APIの変更点ってどっかでアナウンスされるのかなぁーpq。

インデックスチューニング

map.rails2u.comで使ってるテーブルの郵便番号の部分に3バイトのインデックス張ったら、郵便番号検索時のクエリーキャッシュ効いてない時の速度が約100倍(!)に。つかそれぐらい最初から張っとけよと。
Railsのログではこんな感じ。

 # インデックス張る前
 Completed in 0.28011 (3 reqs/sec)
 Rendering: 0.00183 (0%)
 DB: 0.27518 (98%)
 # インデックス張った後
 Completed in 0.00965 (103 reqs/sec)
 Rendering: 0.00385 (39%)
 DB: 0.00230 (23%)
 # ちなみに住所のlike検索。遅い
 Completed in 0.32435 (3 reqs/sec)
 Rendering: 0.00182 (0%)
 DB: 0.32036 (98%)

MySQL初心者なのでこの本読みながら。すばらC。

実践ハイパフォーマンスMySQL
ジェレミ・D. ザウドニ デレク・J. ベリング Jeremy D. Zawodny Derek J. Balling 林 秀幸
オライリージャパン (2004/10)
売り上げランキング: 15,641
おすすめ度の平均: 4.5
4 MySQLの裏技集
4 もう少し分量があれば・・・
5 こんな技術解説書がもっと世にあれば