1. appengine ja night#16 Beer Talk Front Endの Controlで Cache Controlで CPU使用量を減らす CPU使用量を減らす source: http://www.flickr.com/photos/katemonkey/122489910/
![appengine ja night 16 BT Frontend cache control](https://cdn-ak-scissors.b.st-hatena.com/image/square/3f7722ac945365446d7b8fe2736fba574c58e388/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Fappenginejanight16btcache-control-110527192345-phpapp01-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
appengine ja night #19 (http://atnd.org/events/25386 )で使った発表資料ですRead less
http://atnd.org/event/E0006125/0 appengine ja night #21 のまとめ - Togetterまとめ appengine ja night #21が終わりました! - スティルハウスの書庫 めもったことを書いておきます。 GAEで使えるぞ!!SPDYとその実践 資料→spdy 関連→SPDY - The Chromium Projects, こてさきAjax:SPDY - livedoor Blog(ブログ), Wakachi demo 導入 Webサービスって変わってきたよね。 画像とか、JSやCSSなどのリソースが増えてきている 一方でHTTPはこの20年間多少バージョンアップしたけれどもあんまり変わってない。もとからシンプルなプロトコルだったから。 リクエストを投げて、戻ってきたら次のリクエストを投げる感じ。これをリソースが増えてもやっ
新料金体系について公開されている情報 2011-05-12: Google App Engine - ついに Preview 卒業です - Google Japan Developer Relations Blog 2011-07-06: App Engine の料金体系変更に関する FAQ - Google Japan Developer Relations Blog 2011-09-02: App Engine アプリケーションのリソースを管理する方法 - Kay's daddy 2011-09-07: App Engine のリソース管理 - TaskQueue の設定 - Kay's daddy 2011-09-09: Google App Engine Blog: A few adjustments to App Engine’s upcoming pricing changes
英文のメッセージ の日本語訳です。 長いポストなのでまず要約を: 新課金体系の適用は 11 月 1 日に延期しました。インスタンス時間の半額期間を 12 月 1 日まで延長しました。Python 2.7 は 12 月 1 日をターゲットにしています。新課金体系では、多くの場合課金額が上昇しますが、皆さんが恐れるほどではないはずです。それから App Engine が依然として魅力的なプラットフォームであることを説明します。 私は App Engine 担当のエンジニアリングディレクターです。はじめまして! 我々は、App Engine がプレビューを卒業して Google の正式サービスになることをとても嬉しく思っています。新しい機能群、99.95% の SLA、改訂版の利用規約、有償サポートの提供、月額課金に加えて、価格体系を変更する予定でいます。先週、我々は “side-by-side
TaskQueue の設定を変更する TaskQueue をデフォルトの設定で使っていると、いくつかまとめて Task を登録した時に並列処理が走り、Frontend Instance が複数立ち上がってしまいます。そこで、max_concurrent_requests を設定することで、同時に実行される Task の数を制限できます。下記の yaml ファイルでは、“default” Queue の max_concurrent_requests を 1 に設定しています。 queue.yaml queue: - name: default rate: 5/s max_concurrent_requests: 1 もちろん、この設定によって Task の実行が遅くなりますが、インスタンスの数は抑えられるはずです。 9/8 追記: また、Task を追加するときに X-AppEngine-
2010年02月12日23:14 カテゴリGoogle App Engineサイト構築 GAE/J、縮小画像の動的生成 新たに編集者の方にもご参加いただき、サイト構築の時間が取れるようになりました(編集者にご応募頂いたmaglianera氏には感謝致します)。いつまた忙しくなるか分かりませんが、可能な範囲で機能追加して行きたいと思います。 先日スレでご要望頂き、品目(商品)の一覧にサムネイル表示を追加しました。このサムネイルは縮小した画像を保持しているのではなく、動的に縮小して表示しています。Google App Engineの場合(およびcbnanashi@GAE/Jの性質上)、Datastoreの容量よりもCPU Time、Image Manipulationに余裕があるので、このやり方は適しているようです。簡単に仕組みを解説します。 まず元となる画像はDatastoreにBlobとし
※2010/4/23 sessionのクリアについてご指摘頂き、追記しました。Google App Engine for Java(GAE/J)にて、どんなアプリを使う場合でも (自分的に)ほぼ必須となる設定ファイルのまとめ。 ていうか、リファレンス読めばいーんだけどさ 1.sessionを有効にする & クリアの設定をする Javaでsession使わないケースなんてあるのか? appengine-web.xml に 下記を追加 <sessions-enabled>true</sessions-enabled> GAE/Jでsessionを使う場合、このままだとDatastoreにsession情報が残ったままなので定期的にクリアするcronを設定する web.xml に 下記を追加 <servlet> <servlet-name>_ah_sessioncleanup</servlet-
Google App EngineのWebサイトに「App Engine Product Roadmap」と名付けられた、文字通り今後のApp Engineのロードマップを説明したページがあります。 このページに書かれている説明によると、ロードマップとして挙げられている項目はApp Engineチームによって開発が進められており、多くは6カ月以内に実現することを意図しているとのこと。また、項目はつねに更新されているとのことです。 ただし、このページに書かれているロードマップの項目はすべてが具体的に書かれているわけではないため、実際にどのような実装として登場するのか分からないものもあります。 Javaのプログラミングなどに詳しいスティルハウスの佐藤一憲氏は、このロードマップを独自に解釈したエントリ「 #appengine の未来はこうなる!」を2日前にブログにアップしています。今後Googl
先週末、ちょっとしたプログラムをGAE/Jで動かして実際に使ってもらってみたのですが、そうすると、いままでテストでちょこちょこやってたときには全部のDaily Quotaが0%だったものが、数%の数字を示すようになります。 これを、ちゃんとプロモーションして多くの人に使ってもらおうとすると、課金が発生したり制限にひっかかったりしそうです。 で、たとえばDatastore APIの呼び出し回数がヤバいとして、API呼び出しを減らすためにキャッシュしようとすると、MemcacheのほうのAPI呼び出し回数がヤバくなってきます。 で、じゃあということでデータストアにデータを置くようにすると、保存量の制約で課金がかかってきます。で、それならと、データストアに置くのはシリアライズしたデータにしてデータ量が最低限になるようにすると、今度はその処理をするためのCPU時間で課金がかかってきます。 コードを
GAEにはMail送信サービスがあり、これを使ってEメールを送信することができます。 しかし、メール送信は必ず成功するとは限らないので、通常はメールを送信する際、送信の成功/失敗を確認し、失敗時には再送信するよう処理すると思います。 GAEでもそういう処理を書くことはできますが、「レスポンスを30秒以内に返さなければならない」という制約があるため、ひとつの処理の中で何度も繰り返すかもしれない処理を行うと、途中でタイムアウトとなり強制的に処理が中断されてしまう可能性があります。 そこで、より確実にメール送信を行うことができるよう、同じくGAEで使えるTaskQueueサービスを使いバックグラウンドでメール送信をする仕組みを作りました。 例えばあるフォームからPOSTされたときにメールを送信しようとした場合、 1. ServletでPOSTを受け取り、送信するメールの情報を作成 2. Task
SDK 1.2.5からGoogle App EngineにTaskQueueが導入されましたが、ローカル(development server)でデバッグはできないと思っている人が結構いるようなので、やり方を書いておきます。 ローカルの環境では、Queueにaddしたタスクは、自動的には実行されず、Queueにたまっています。たまっているタスクを実行するには、http://localhost:8080/_ah/adminにアクセスし、左側のTask Queuesのリンクをクリックします。 すると、Queueの一覧が表示されるので、そこでQueueのリンクをクリックすると、タスクを実行する画面に遷移します。そこで、runのボタンを押すと、ローカルでQueueのタスクを実行できます。 Web ApplicationをDebug Asで起動しておけば、EclipseからDebugすることもできま
google appengine for javaでJDODetachedFieldAccessExceptionが発生した。 エラーメッセージ javax.jdo.JDODetachedFieldAccessException: You have just attempted to access field "toAddressList" yet this field was not detached when you detached the object. Either dont access this field, or detach it when detaching the object. 解決方法はdefaultFetchGroup="true" @Persistent(defaultFetchGroup="true") private List<String> toAddr
昨日のappengine-java-nightに参加した皆さんなら、エントリのタイトルだけ見たら中身を見る必要はありませんね! ちょっと今は時間がないのでコードだけうpしますが、クライアント側の環境で通常通りappengineのサービスにアクセスしたら、なぜかデプロイ環境側のサービスにアクセスする、という仕組みが動作しました。 リクエストされたバイト配列とサービス名、メソッド名、アプリケーション名(うっかり間違ったアプリを触るのを防ぐため。)を使ってmeksynccallをするだけのサーブレットを作成し、デプロイ環境にデプロイする クライアント側では、makeSyncCallへのリクエストを上記のサーブレットへ転送するだけのApiProxy.Delegateを実装し、ApiProxy#setDelegate(ApiProxyLocalImpl)した後で、ApiProxy#setDelega
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く