Twister Alternativeのリリースについては、トラブルが色々あったので苦労したのですが、記録がてらエントリしておきたいと思います。
まずはGoogle App Engine(GAE)について。
そもそもこの素敵そうなインフラを利用してみたくてTwisterをつくってみようと思いついたわけです。
Googleの謎めいた巨大なインフラが使えるというのは、なんていうかウェブ開発を行う人間として興奮するじゃないですか。
そんなわけでこれは超使ってみたい!これで僕もグーグラー!?と思い立ち、前から適当にあたためていたネタを使ってサービスづくりを始めてみました。
このインフラにはいくつか癖があって、まずは今のところ利用できる言語がPythonしかありません。普段PHPを使ってる僕としては、Pythonを使うのは初めてでパイソンワケワカランな感じだったのですが、GAEのためにがんばってやってみました。というかウェブアプリって結局リクエストを受けてDBに保存して、それを取り出して表示するってだけなので、ちょっと勉強したらわりとなんとかなるものです。
それからデータベースが独自のDatastoreというもので、これがMySQLなどに代表されるいわゆるリレーショナルデータベースではないのです。JOINができなくて何ができんだYOと思っていたのですが、これまた工夫をしてみたらわりと何でもできそうなことがわかってきました。おkおk。
あと悩んだのが、GAEは現在のところ全文検索に対応していないということ。Googleのインフラで全文検索できないなんてバカな!これがアメリカンジョークか!と思ったのですが残念ながらジョークではありませんでした。軽くショックを受けながらウェブで何かいい方法がないかと調べてみると、既にGAE上で全文検索を自力で実装した方を発見。Yahoo!の形態素解析APIを使って全文検索を実現されていました。スゲーこれだ!というわけで参考にさせていただいて、これもなんとかクリア。
やればできる子の日記 - 全文検索エンジンを試作してみたよ
そんなわけで、超いけそう!GAEでアプリケーションつくれたよ!これで今日からグーグラーだよ(違)!といきがっていたのですが、この先に大いなる落とし穴が待っているのでした。
疲れたので つづく