GAE

Google App Engine のdatastore readコストを極力まで減らす

だいたいgaeのdatastore関連の問題ってのはwriteのコストに起因することで、そこをイカに減らすかがノウハウ(あるいはバッドノウハウ)なんですが、今作ってるサービスでは珍しくreadのコストが問題になってきました。 で、readのコストを減らす定番が「keyを…

Google App Engineの1タスク(?)時間は30秒より長くできる?

GAE

Google App Engine(以下GAE)には制限があってhttp://code.google.com/intl/ja/appengine/docs/whatisgoogleappengine.html 一部の機能では、システムの安定性を確保するため、割り当てとは関係のない制限の強制があります。たとえば、アプリケーションが Web…

東京アメッシュを監視してアラートしてくれるシステムを作ったよ

東京アメッシュが大好きなので。雨が降ったら教えてくれるシステムを作ってみました。 概要はこのページで http://sites.google.com/site/miz999/iGoogle用のガジェットをメインに構築しました。画像を生テキスト化したものを返すこともできるので、javascri…

iGoogleからGAEに対してmakeRequestすると504エラーが返ってくる件

GAE

こんな感じで拾ってやると504 error var domdata = obj.text; var errorData = obj.errors; エラーコード調べてみるとタイムアウトエラーとのこと。 GAE相手だとスピンアップのオーバーヘッドで頻繁に起こってしまうらしい。 iGoogle側でタイムアウトの時間…

Google App EngineでのGIFの続き その3

GAE

白黒なんかの1ビット画像のGIFでコケるのを、結局修正することにした。 仕様書によると1bitカラーの時は2bitカラーとして強引にエンコードするらしい。 つまりカラーパレットの長さが2のときに4に拡張して、それに呼応してclearcodeなども動かすと。 で、ク…

Google App EngineでのGIFの続き その2

GAE

pygif.pyによる処理で一見、上手く行ってるように見えたが、パレットの長さが2の画像を読み込ませるとコケる。 lzwのデコードで失敗してる感じ。ざっとソース読んでみたが、圧縮展開関係は難しいので無理。 レアケースだから放置されてるのかな? そもそもこ…

Google App EngineでのGIFの続き

GAE

いろいろ調べたら、ピクセル単位のアクセスを可能にするGIF用の小さいモジュール発見pygif.py : » Network » emesene » emesene-1.6.2 » pygif » Python Open Sourceドキュメントが全く無くて苦労するが、何とか目的は達せられた感じ 以下テストソース impor…

Google App Engine のpython image libraryが機能限定版であることに気づきショック

GAE

pixel単位のアクセス出来ないのかー。 使えそうなモジュール探してくるか、別サーバでやるか・・・。手元のpure PILなテスト環境でもパレットのアクセスが面倒くさいしー。 GIFってめんどくさいなぁ。RGBでフラットに触れればいいのになー。30分後: こうす…

2chの過去ログを時系列で参照

GAE

録画しておいたテレビ番組を見ていて「この時の実況スレはどうなっていたのかしらん?」って思うことが多々あるのですが、過去ログを集めてるサイト、過去ログ検索 - READ2CHとかログ速なんかでは、スレが立った時間か落ちた時間で列挙されていて、"access b…

Google App Engineのdatastoreで空文字列を入れるには

GAE

BadValueError: 要素名 must not be empty. って言うエラー対処には'None'を入れる、と。 最初、Falseでやって失敗した。