2009年 07月 14日

竹林も、神社と同じように、いつも、どこで見ても、懐しい感じがする。

考えてみると、よく自分の夢には竹林がでてくる。たんぼだらけの田舎で、竹林がある。近くに、山に入る道があり、そこを入っていくと、小さな神社がある。よく見る。

となりのトトロのバス停のイメージが近いけど、今調べてみたら、あれは竹林ではなかった。何が発端でそういう懐かしさを抱くのかよくわからない。

竹林は、すごく安定した、守りを感じる。こういうのは、深めていくと信仰になるのかもしれないが、竹林信仰というのは聞いたことがない……

Google App Engine がマイブームだけど、いまいち使いかたがわかってない。

datastore api って想像していたよりもずっと遅くて、普通に read するだけでも結構 CPU Time を消費してしまう (50-80msec?)。ここらへんの感覚は、デプロイしてみないとわからないのでとてもやりにくい。

hookhub.com のトップは、最近フックされたウェブフックを表示しているけど、毎回 datastore に last_hooked 的なプロパティでソートしてつつひいて、さらにそれぞれについての 10 回ぐらい user 情報をひいたりすると、それだけで GAE のログに「最適化が必要なページ」として警告がでる。

少なくともどこかの段階でちゃんとキャッシュしないといけないけど、いまいち感覚がわからない。アプリケーション内のメモリにインスタンスキャッシュさせていけばいいのか、それとも memcache をつかえばいいのか…… 普通どうするんだろ?

今のところ、view を部分的に memcache に入れるような (TT Cache みたいなの) のを入れて、とりあえず警告はでなくなった。むずかしい…… 今はソート済みクエリをキャッシュしてないけど、これも expire つきで memcache に入れたほうがよさそうな気がする。

赤のリクエストが memcache にテンプレートキャッシュするようにしたときのリクエストで、一時的に memcache api も消費したので時間がかかってる。直後から api_cpu_ms が半減しているので、キャッシュの効果はあったようだ。だけど全体としての応答時間はまだまだ極めて遅い……

ちなみにユーザ情報を index つきで一発だけしかひいてない /help の応答時間は 100msec 以下になってる。

datastore はログを見ていると、割と timeout するので、ちゃんとエラー処理をすべきだろう。今はなんもしてないので 500 がでる。

近頃のディスプレイは解像度高いから、写真のサムネを 700 か 800 にしてもよさそうだなぁ → 700にしてみた。fotolife、オリジナル画像が存在する写真のサムネを現在の設定でつくりなおすコマンドがほしい。

2009年 07月 13日

リア充の人達は、こちらが些細なことで強烈な不安感を抱くというのをいいことに、ちょこちょこと、世間からはとがめられないようなことを大量にして、こちらのバッファを溢れさえ、殺そうとしてくる。

バッファを全て埋めるほどしなくとも、バッファをある程度埋めてやりさえすれば、徐々に処理能力は落ちていくし、そうなると、処理落ちに対する不安によって勝手にバッファが埋まっていくようになる。簡単である。

洛西竹林公園は、思ったより広くなかった。ただ、その周辺 (竹の径 (みち)) というのがとても広範囲だった。

2009年 07月 12日

hookhub というのをつくりました

http://www.hookhub.com/

  1. Web Hook に対応したサイトからのフックを受けて、
  2. それをいい感じに JS で加工し、
  3. 他のサービスにリクエストを投げたり、自分にメールを送ったりすることができます。

例えば、

  • はてブしたエントリを twitter に
  • github に push したら twitter に
  • Google Code にコミットしたら twitter に

とか

  • はてブで [あとで読む] タグをつけたら、Remember the milk にタスクをつくる
  • はてブのお気に入りユーザが [culture] タグをつけたら即自分にメールを投げるとか

とか、些細なことを自分でホストすることなくできるようになります。

こういったルールは全て JavaScript で書くようになっていますが、Fork と Config 機能で他の人のをコピってすぐ使えたりします。

例えばはてブ → twitterとかだと、

  1. http://www.hookhub.com/cho45/hook/1004 を Fork して Save
  2. Config で twitter_user, twitter_pass を入れる
  3. はてブの「イベント通知を受けとるURL」に Hook URI を入力すればできます


ちなみに GAE + Scala でつくっていて、フック起動時の JS の実行には Rhino を使っています。Rhino では頑張ってサンドボックスを作っていろいろ制限をかけているつもりです。

  • 松尾大社
  • 洛西竹林公園
  • (六孫王神社)

どっちもとても遠かった…… 松尾大社は距離的には上賀茂と同じぐらいっぽいけど、四条通りをひたすら西にというのがとてもだるかった。鴨川は楽しいけど、四条通りは退屈だからなぁ……

その後、ひたすら桂川を下って竹林公園へいったけど、こっちは結構登った場所にあるので自転車だと大変だった。16時すぎの入園時間過ぎについてしまったけどオマケして入れてもらった……

松尾大社、盤座まで行きたかったけど、独りではだめらしいので諦めた。