タグ

slim3に関するy-kawazのブックマーク (5)

  • [Google App Engine編]画面設計で制約を避ける

    クラウドコンピューティングサービスは、従来にない拡張性を持ち、好きなときに好きなだけのリソースを使えるシステム基盤を提供するものです。しかし、その特性を生かすには、クラウド事業者ごとに異なる設計のルールを守らなければなりません。 そこで連載は、米Googleのサービス「Google App Engine」に焦点を当て、その「デザインパターン」について解説をします。ここでは、クラウドサービスの特性を生かしたり、制約を回避したりするための設計ノウハウをデザインパターンと呼んでいます。 今回解説する設計ノウハウを「デザインパターン」と呼ぶことに、違和感を持つ読者もいるかもしれません。「これこそクラウド設計のデザインパターンだ」と言えるものは、今後さまざまな知見が集まって確立していくのだと思います。現在はその知見が少しずつたまってきている段階でしょう。今回の連載が、そうした知見の一つになってほし

    [Google App Engine編]画面設計で制約を避ける
    y-kawaz
    y-kawaz 2011/03/22
    @shin1ogawa の記事。
  • #appengine でスキーマ変更に対応するバッチ処理を行う

    2009/11/05追記ひがさんより指摘を頂いて、30秒制限に関する補足を文中に青字で追記しました。いつもありがとうございます、助かります>ひがさん ここから文 タイトルの処理について、いくつかノウハウを書いておきます。ポイントは以下の2点。 全てのエンティティにスキーマバージョンを保持する ローカル環境からデプロイ環境へ直結してバッチ処理を実行する事で、30秒制限なんて無視してしまう 実例をもとに説明してみます。最近、appengine java night用のまとめページとかに使おうとしているサイトを運営していて、そこに「TwitterでAppEngine関連についてつぶやかれた内容を収集する」という機能を実装しました。しかし、つぶやきを保存する際の投稿者の情報として「Name」を保持しているものの「ScreenName」を保持しておらず、投稿者のタイムラインページへのリンクを作成

  • AppEngine/Jのspin-upを劇的に改善する方法 - ひがやすを技術ブログ

    AppEngineは、アクセスがあったときにアプリケーションを起動し、しばらくアクセスが無ければアプリケーションを終了させ、また次のリクエストで再起動するという仕組みを導入しています。 そのため、アプリケーションを起動(spin-up)する時間がとても重要になってきます。このspin-upの時間はpython(webapp)で60cpu_ms以下。(cpu_msはcpuが使う仮想的な時間ですがmsと同じ感じで捉えてもらってもとりあえずは大丈夫です)JavaのServletだと600cpu_msくらいです。PythonでもDjangoような大きなフレームワークだと1000cpu_msくらい(アプリによる)かかりますが、許容範囲内。JavaだとSlim3で1300cpu_ms、Springだと早くて7000cpu_msという感じで、Slim3がギリギリ許容範囲内でしょうか。ほんとうは、1000

    AppEngine/Jのspin-upを劇的に改善する方法 - ひがやすを技術ブログ
    y-kawaz
    y-kawaz 2010/11/09
    この手は最近GAEに限らず良く使う。
  • App Engineではどの言語を使えばいいのか - ひがやすを技術ブログ

    App Engineで使える言語は基的にはPythonJavaです。それでは、どちらを選ぶのが良いのでしょうか。 それ以外の言語の人向けの話は後から出てくるのでしばらくこのままお読みください。 趣味ならば単に好きなものを選ぶだけでいいのですが、仕事で使うためには、長所と短所をきちんと把握した上で選ぶ必要があります。また、ここでの話は言語としての一般的な話ではなくApp Engineで使うとき限定の話としてお読みください。 まず安定度ですが、インフラ部分の安定度は、どちらも基的に同じです。もしかすると、まったく同じものを使っているのかもしれません。 その上で動くAPIの部分は、インフラと直接結びついている低レベルな部分と低レベルなAPIの上に構築された高レベルな部分とに分けて考える必要があります。 低レベルなAPIはLLAPIと呼ばれたりしますが、安定度は、PythonJavaも同じ

    App Engineではどの言語を使えばいいのか - ひがやすを技術ブログ
    y-kawaz
    y-kawaz 2010/03/19
    「Javaを使いたいあなた、心配することはありません。Slim3を使えばいいのです。」見事な勧誘w
  • Google App EngineでGlobal Transaction - ひがやすを技術ブログ

    Google App EngineにはTransactionは1つのEntity Group内でしかできないという制限があります。詳しくは、App EngineのEntityGroupを理解しよう - yvsu pron. yasを参照してください。 そうするとある口座から別の口座にお金を振込むような送金のパターンで、Transactionを利用することができません(すべての口座を1Entity Groupに押し込むと更新がぶつかって現実的ではないから)。送金パターンで整合性を保つためには、理論的には次のようになります。 http://songofcloud.gluegent.com/2009/11/blog-post_18.html 実装するとこんな感じ。 http://blog.notdot.net/2009/9/Distributed-Transactions-on-App-Engi

    Google App EngineでGlobal Transaction - ひがやすを技術ブログ
    y-kawaz
    y-kawaz 2010/02/10
    複雑な問題を使いやすいインターフェースで扱えて良い感じ。
  • 1