2010-02-01から1ヶ月間の記事一覧

Java Cloud Meeting Fukuoka 2010の資料

参加されたみなさま、おつかれさまでした。 楽しかったという意見が多く見られたのでうれしいです。 ということで、当日の資料です。 え?背景に色がついてる?きっと当日はプロジェクタの調子が悪くてまっしろに見えたのではないかと。 クラウドで変わるJav…

Twitterがデータを保持しているのに関わらず3000件しか過去ログが見れない理由

ぼくの推測ですが。 Twitterでは、過去3000件しか自分の発言を取得することができません。 だからといって、3000件しかデータを保持していないわけではなく、すべての発言が保存されています。 たとえば、このように、2008年8月の発言を見ることができます。…

Google App EngineでのDatastore使用量見積もりは注意が必要

先日セッションデータを消したかったのは、Datastore使用量が1GBを超えて一日0.01$の課金がかかってたからなのです。日曜日くらいに無事消えました。 Google App Engine/Javaでセッション情報を定期的に消す処理 130万件を消す処理に5日以上かかった計算に。…

Google App Engine/JavaにJSPは向いているけどカスタムタグや式言語には注意

JSPはJavaコードに変換されるので、原理的にCPUを使わないということからGoogle App Engineとは相性がいいのだけど、式言語は注意。 式言語は毎回パースされて評価されることになる。それに式言語はJSP中で多く使うことになるので、CPU利用率が大きくなる。 …

Google App EngineのQueueのリトライ回数取得は正確とは限らない

Google App Engineのタスクキューでは、ヘッダーからリトライ回数が得られる。 String count = request.getHeader("X-AppEngine-TaskRetryCount"); で、この値を使ってタスクキューのリトライ回数を制限してたのだけど、その回数よりも多くリトライされるこ…

Google App Engine/Java標準のセッション消去サーブレット

GAEには標準でセッション消去用のサーブレットが用意されているらしい。 こんな感じでサーブレットをweb.xmlに登録。 <servlet> <servlet-name>SessionCleanupServlet</servlet-name> <servlet-class>com.google.apphosting.utils.servlet.SessionCleanupServlet</servlet-class> </servlet> で、サーブレットマッピングも追加。 <servlet-mapping> <servlet-name>SessionClea</servlet-name></servlet-mapping>…

Google App Engine/Javaでセッション情報を定期的に消す処理

Google App Engineでは、セッション情報はデータストアに保存されます。 で、自動的には消えないので、うかうかするとこんなふうに100万件以上たまってしまいます。 容量もそれなりに食って、350MB近くになっていました。GAEでは1GBを超えると課金されるので…

2月20日(土)Java Cloud Meeting Fukuoka 2010やります

主にGoogle App Engine/Javaについてですが、Java Cloud Meeting Fukuoka 2010というイベントを2月20日(土)に博多駅近くのアスクビルにて行います。 「http://www.kistools.jp/rate」がGoogle App Engineで1日で200万アクセスを、急にアクセスが来たにも関わ…

Google App Engineのプロパティ名は可能な限り短いほうがいいかもしれない

他の話を期待してる人も多いと思うのだけど、まとめるのに時間がかかりそうなので小ネタを。 まず、このエンティティ使用状況をみてください。 これ、http://kistools.appspot.com/rateで格納されているエンティティのひとつなんですけど、Metadataが85%にな…