タグ

GAEに関するtanakaBoxのブックマーク (19)

  • ASCII.jp:Twitter APIとGAEでおもしろWebサービスを作ろう! |Twitter&Google App Engineで始めるWebプログラミング入門

    みなさんこんにちは。ふむふむソフトの飯島です。 さっそくですが、みなさんはTwitter APIを使ってプログラミングしていますか? すでに星の数ほどTwitterアプリやWebサービスはありますし、バリバリ使っている方も多いと思いますが、「知っているけれど、なかなか触るチャンスがなくて……」という方もたくさんいるのではないでしょうか? そこで今回から5回にわたって、Twitter APIを使ったWebサービスのプログラミングについて解説したいと思います。ただAPIの使い方を解説するだけでは面白くないですから、Webサービスを公開するサーバーとしてグーグルのクラウドサービス「Google App Engine(以下GAE)」を使い、自分でサーバーを用意することなく全部無料で遊んでみましょう。 連載では、サンプルコードのダウンロードはもちろん、Twitter APIの準備からGAEの準備、

    ASCII.jp:Twitter APIとGAEでおもしろWebサービスを作ろう! |Twitter&Google App Engineで始めるWebプログラミング入門
  • Google App Engineに最適化したJavaフレームワーク「Slim3」登場。作者のひがやすをさんにインタビュー

    Google App Engineに最適化したJavaフレームワーク「Slim3」登場。作者のひがやすをさんにインタビュー Slim3は、Google App Engineで複数行のトランザクション操作を可能にし、標準で用意されているAPIよりも高速な動作を実現するなどの特徴があります。Slim3を開発したのは、オープンソースのJavaフレームワークとして知られるSeasarなどを開発してきたひがやすを氏です。 正式リリースにあたり、Slim3の特徴、開発に苦労した点、今後の展開などについて、ひが氏自身に説明してもらうべくインタビューをしました(インタビューはメールで質問し、返答いただくという方法で行いました)。 Slim3の設計哲学は、“Less is more”を実現すること ―― Slim3とは何でしょうか? Javaにそれほど詳しくないというプログラマにも説明するとしたらどう説明す

    Google App Engineに最適化したJavaフレームワーク「Slim3」登場。作者のひがやすをさんにインタビュー
  • Google App Engine をはじめてみよう

    "Google App Engine Java の色々な機能を、実際にコーディングしながら体験してみよう" という主旨のもと、Google App Engine for Java のコードラボをこれまでに3回開催してきました。Java を使った Web アプリケーションの開発経験はあるけれども、App Engine は初めてという方向けで、毎回、即日定員に達してしまう人気コースです。 このコードラボで利用している教材は、GTUG のメンバーとGoogle のソフトウェアエンジニアたちが共同で作り上げたものです。コース設計からドキュメントの制作、コース参加者のフィードバックを反映するなど、さまざまな面でGTUGメンバーの惜しみない協力をいただきました。 そして、いよいよこのコース教材「Google App Engine Code Lab for Java」を一般に公開することになり、3月11

    Google App Engine をはじめてみよう
  • Google App Engineのtips集 - スティルハウスの書庫の書庫

    (随時更新中です。間違いなどありましたらコメントをお願いします!) このページのtinyurl: http://tinyurl.com/gaetips Datastoreのtips Bigtableの内部構造 BigtableによるDatastoreの実装 Datastoreによるクエリの実装 トランザクションとエンティティグループ Datastoreのtips List Proprtyとmerge joinの使い方 GAE一般のtips GAEのサーバー構成とリクエストの流れ Task Queue APIの使い方 開発環境とプロダクション環境の違い Flex/AIR+GAEのtips GAE/JにBlazeDSを組み込む BlazeDSの番環境へのデプロイでハマる Datastore APIの取り扱いでハマる App Engine開発の便利な参考ページ TOPGATEさんのGoogle

    Google App Engineのtips集 - スティルハウスの書庫の書庫
  • Google App Engineで開発するスケールするアプリケーション一覧

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Google App Engineで開発するスケールするアプリケーション一覧
  • Google APP Engine Python入門(2010年2月版) - TechTalkManiacs

    Google APP Engineについては初期のころのまとめはあるのですが、Pythonですとリリースからそろそろ2年近くになり内容も大きく様変わりしています。最速マスターシリーズでもGoogle APP Engineについてのまとめが無く、そろそろアップデートの必要があると思いまとめてみました。 基的にwindows環境中心です。 最初に ドキュメントを見るときは必ず英語版を見ましょう。日語版があるのはありがたいのですが、バージョンとしてはかなり古く、特に歴史の長いPython版では現行の内容とはかなりの隔たりがあります。 Google APP EngineのドキュメントのURLは以下のようなパターンになっています。 http://code.google.com/intl/ja/appengine/docs/**** これのうちjaが言語を表すコードになっていますので、これをenに

    Google APP Engine Python入門(2010年2月版) - TechTalkManiacs
  • Google App Engine上のベスト・プラクティス、その1: Datastore

    Google App Engine上でアプリを作りはじめて約二ヶ月。いろいろと分かって来たこともあるので、自分へのメモも含めてまとめてみる。まずは、Datastoreの話から。 なによりも大切なのはデータベースの設計 あたりまえと言えばあたりまえの話だが、App Engine上でアプリを作る上でもっとも大切なこと(=頭を使うべきところ)は、データベースの設計である。特にリレーショナル・データベース(RDB)上でのアプリ作りに慣れた人には、大きな「発想の転換」が必要なので、ここは注意が必要。 特に絶対にやっては行けないのは、 将来RDB上へ移行できるようにレイヤーを作って、その上にアプリを作る RDB上に作ったアプリをデータモデルを大幅に変更せずにApp Engine上に移植する RDBを前提に設計されたフレームワークをApp Engine上に載せて、その上にアプリを作る など。App En

  • Google App Engineを使って無料でサイトを立ち上げる方法 - EC studio 技術ブログ

    Googleが提供する、Google App Engineというサービスを知っていますか? Amazon EC2などと同じで、Googleが用意するクラウドサーバー環境で アプリケーション開発ができるというサービスです。 (レンタルサーバーのようなもの) その大きな特徴は、なんといっても月間500万PV相当まで"無料"ということです。 ※有料で制限を拡張することも可能 ※2011/09/07 注 Google App Engineの新料金体系が発表されました。 新料金体系では無料で使える枠が大幅に削減されています。 この記事の無料での使用制限に関する記述は、新料金体系では 正しくありませんのでご注意ください。 「App Engine は無料で始めることができます。最大 500 MB の永続性ストレージに加え、月間約 500 万ページ ビューに対応できる十分な CPU と帯域幅を、すべてのア

    tanakaBox
    tanakaBox 2010/02/08
    導入
  • Song of Cloud: 送金のトランザクション処理パターン

    App Engineで現実的な送金処理について考え中です。 ドラフト版なので、怪しい点があればご指摘いただければ幸いです。 コメントで情報いただきました。 Distributed Transactions on App Engineで紹介されてる方法と基的に同じなので、おそらく問題なく動きそうです。ありがとうございました。 今回はこんな図を使います。 この図の読み方は、矢印の方向にユースケースの一連の処理(またはリクエストの処理)が流れていて、右に行くほど時間が経過しています。そして、矢印がくし刺しにしている四角形は、そのユースケース中で操作するエンティティを表しています。 また、左右の位置が同じ矢印は、基的には同じ時刻に発生したイベントを表しています。上記の図では、A, B, Cがそれぞれの口座エンティティを同時に操作している感じです。 並行性制御(おさらい) 最初の図のように、それ

    tanakaBox
    tanakaBox 2010/01/25
    トランザクションについて
  • 日本イラストレーション協会|ジャイラ

    Truyện Tranh Online - Đọc Manga, Manhwa, Manhua Mới Nhất

    tanakaBox
    tanakaBox 2009/12/22
    スゲー簡単そう。
  • App Engineでバージョンによる楽観的排他制御 - ひがやすを技術ブログ

    Song of Cloudで送金のトランザクション処理パターンが紹介されていました。 http://songofcloud.gluegent.com/2009/11/blog-post_18.html 同様のpython版がこちら Distributed Transactions on App Engine - Nick's Blog 上記のやり方で基的には問題はないのですが、バージョン管理による楽観的排他制御を行っていないので、送金だけを考えるなら、残高を差分で更新しているので大丈夫ですが、これを一般的なパターンに拡張しようとすると、楽観的排他制御は必要になります。 楽観的排他制御とは、エンティティにバージョン番号を持たせておいて、メモリ読み込んだときのバージョン番号と書き込むときのバージョン番号が等しいことを確認する方法で、RDBMSの場合は、次のようなSQLを実行することで実現しま

    App Engineでバージョンによる楽観的排他制御 - ひがやすを技術ブログ
  • App EngineのEntityGroupを理解しよう - ひがやすを技術ブログ

    App EngineのEntitiGroupは、Keyの親子関係を利用して組み立てられたEntityの集まりです。 Entityとは、Bigtable上の1つの行で、ユニークに識別するためのKeyを持っています。 Keyは、種類をあらわすkindとAppEngineから自動的に採番されるidもしくはアプリケーション側で自由に決めることのできるnameで構成されます。 通常は、AppEngineの自動採番に任せますが、Emailのアドレスをキーに使いたい場合などは、nameを使います。kindはテーブル名のようなものだと思ってください。 Keyの親子関係は次のようにして作ります。 Key grandparentKey = KeyFactory.createKey("Grandparent", "しげお"); Key parentKey = KeyFactory.createKey(grand

    App EngineのEntityGroupを理解しよう - ひがやすを技術ブログ
  • Google App Engineで開発するスケールするアプリケーション(前編)

    はじめに 「人類が使うすべての情報を集め整理する」 この壮大なミッションを掲げ設立されたGoogleは、そのミッションを遂行するべく、マシン・ネットワークなどのインフラ環境に莫大な金額を投資し、独自の技術を開発し続けています。Googleは検索エンジンだけにとどまらず、Gmail、Google Calendar、Google Maps、Google Analystics、Youtube、Google Apps、Google Earthなど、いまや全世界のユーザーが使用するサービスをリリースしており、その扱うデータ量、アクセス数は天文学的な数になることが予想されます。Googleはそれらのデータ量、アクセス数を高速にさばき、なおかつ耐障害性の高いスケーラブルな大規模分散システムを構築しています。 そんな中、2008年4月にGoogle App Engineがリリースされました。Google

    Google App Engineで開発するスケールするアプリケーション(前編)
  • 【祝完了】 オレの和訳にオマエが泣いた - Google App Engine - 暗号、数学、時々プログラミング

    Google App Engine | 04:50 | はじめに このエントリーは、先に公開した記事「道に迷ったアナタに捧ぐ(関連記事のまとめ)」が原因不明の事象により直リンクでは見えない!という問題に対処する目的で作成されました。中身は基的に変わりません。なんだかブックマークを見ていて「まとめ記事」の存在をご存知頂けていないッポイな、、という気がしたもので、日の「超訳完了記念」に合わせて再度作成してみた次第です。どの記事が何に言及したものかよく分からん!とお怒りの方々の為に少しでも助けになれば幸いです。Google App Engine の公開から約2週間。毎日結構な方のアクセスがあった事が励みになり、スピードを落とさずに超訳作業が完了出来ました。スターやブクマ、コメントを下さった皆さんだけでなく、アクセス頂いた全ての方々に感謝したいと思います。また、多くの皆さんにブログをご覧頂く

    tanakaBox
    tanakaBox 2009/12/02
    GAEのはじめかた。
  • はてなブログ | 無料ブログを作成しよう

    【マンガ】海外生活を支える心のインフラ「お好み焼き」 実際にはこんなにソースたっぷりつけません!!!お好み焼きソース貴重なので薄く薄く塗ってべてます。 ドイツ住み始めた8年前、お米が鍋で炊けたときにホッとしたけど、お好み焼き(プロトタイプ)が作れたときもすごくホッとした記憶があります。べ慣れたものが普…

    はてなブログ | 無料ブログを作成しよう
  • App Engineのユニーク制限を正しく理解しよう - ひがやすを技術ブログ

    Google App EngineではRDBMSのようなUnique Indexをサポートしていません。ユニーク制限を実現する場合は、トランザクション中でKeyを使ったgetとputを組み合わせる必要があります。 ここでは、email addressがユニークだったらそれを確定してtrueを返し、そうでない場合にはfalseを返すコードを考えます。 最初にトランザクションを使わないコードを見てみましょう。KeyFactory.createKeyの最初に引数は、kindといってテーブル名みたいなものです。 public boolean putUniqueEmailAddress(String value) { DatastoreService ds = DatastoreServiceFactory.getDatastoreService(); Key key = KeyFactory.cr

    App Engineのユニーク制限を正しく理解しよう - ひがやすを技術ブログ
  • Google App Engine入門:Entity Groupとトランザクション処理

    今週に入ってから、ようやく少し気でGoogle App Engineでプログラムを書き始めている私だが、ようやく Entity Group の使い方が分かって来たので簡単に解説してみる。 Entity Groupとは、一口で言えば「トランザクションを使ったアトミックな読み書きの対象となるEntity(=データベース上のオブジェクト)の集まり」である。 イメージとしては、まず「一つのハノイの塔を三人で同時に遊んでいる姿」を思い浮かべると分かりやすいかも知れない。全くのルールなしで皆で同時に遊ぼうとすると、腕が交錯してぐちゃぐちゃになってしまう。 そこで、「ある時点でハノイの塔ボード(三つの棒を支えている水平に置かれた板)に触ることが出来る人は常に一人。一度ボードに触った人はすべての円盤をいずれかの棒の位置に置いた状態にしてからしか手を離してはいけない。もし自分がハノイの塔に触りたい時に、す

    tanakaBox
    tanakaBox 2009/11/13
    ハノイの塔でわかりやすいGAEのトランザクションのお話。
  • GAE/J + githubでどこでもプログラミング! - そうだ?Blogを書こう?

    2009-09-29追記 ssh-keyの追加に関する記述が誤っていたのを修正 2009-10-01追記 多環境間のリポジトリのマージについて追記 最近趣味開発で、Eclipce上からgithubとGAE/Jを使って開発する環境を作りました。 こいつが実に素敵滅法なので簡単にまとめたいと思います。 いろいろスッ飛ばしていますがご了承下さい・・・ GAE/Jって何さ EclipseでJava版App Engineを始めるための基礎知識 (1/4):Google App Engineで手軽に試すJavaクラウド(1) - @IT Google App Engineという、Googleが提供するレンタルサーバーみたいなものです。 (レンタルサーバーほど自由度はありませんが簡単で、レンタルサーブレットコンテナといった感じです) インターネット上でJavaアプリケーションをデプロイして、簡単にWeb

    GAE/J + githubでどこでもプログラミング! - そうだ?Blogを書こう?
    tanakaBox
    tanakaBox 2009/09/27
    面白そうだなぁ。
  • 1