GAE

Google App Engineのリソース割り当てを使いきった場合の処理について

GAE

Google App Engine公式ページのドキュメントは日本語化されていない部分が多く、リソース割り当てを使い切った場合の処理についてもその一つです。 これは実行中のコード内からリソースの状態を知るおそらく唯一の方法であるにも関わらず日本語版がないので…

GAEのmemcacheモジュールの関数がAptanaやEclipse+PyDevで未定義とされる原因と対策

私はGAEのコードを書く際Aptana studioを使用しているのですが、正しくPathが通っている状態でもmemcacheモジュールだけコード解析でエラーが出ます。 具体的にはmemcacheモジュール内の関数"memcache.get()"などを使用するとその関数は定義されていないとい…

GAEデータストアのModelクラスのインスタンスからそのkey_nameを取得する方法について

これまでModel、Key、Propertyの関係を理解しないままデータストアを使用していた事を改めて思い知りました。(^_^;)下のような都道府県の面積と人口を記録するデータストアのエンティティがあるとします。 class Prefecture(db.Model): area = db.FloatPrope…

GAEでcronを設定する

cronは一般的には crontab(クロンタブ、あるいはクローンタブ、クーロンタブとも)コマンドはUnix系OSにおいて、コマンドの定時実行のスケジュール管理を行うために用いられるコマンドである。 http://ja.wikipedia.org/wiki/Crontab とのことですがGoogle …

URLフェッチのタイムアウト時間を設定する

先日デプロイしたスコアアタックしりとりなのですがURLフェッチに意図しないエラーがあったようで原因を調べてみました。 ちなみにURLフェッチというのはGoogle App Engine上のアプリケーションが外部のサーバから必要な情報をhttp(s)で取得することです。ス…

初めてGoogle App Engineにデプロイしました

Google App Engineで何か作るのを目標にしますと書いてからすでに1年以上たってしまいましたがやっと初のアプリをデプロイしました。 スコアアタックしりとりというゲームです。 はてなキーワードに登録されている言葉を10個使ってしりとりをしスコアを競う…

Google App Engine のインストールでエラーコード2908

GAE

昨日Google App Engine SDKを1.7.4にアップデートしようとしたところ、インストール中にエラーコード2908がでてインストールできなくなりました。 試行錯誤の結果なんとかインストールを済ませることができたので書きたいと思います。まず私の環境は以下です…

webapp2のセッション機能を使ってみました

先日の記事で書いていたセッションのコードをwebapp2のセッション機能を使って書きなおしてみました。コードはサンプルのものと全く同じです。 class BaseHandler(webapp2.RequestHandler): def dispatch(self): self.session_store = sessions.get_store(re…

データをAjax風にやり取りするように改造してみました

これまで書いてきたGAEのコードではブラウザからの入力データを受け取るたびにページを再描画する方法で画面を更新していましたが、今回ブラウザ側はJavascriptを使ってデータの送受信を行うように改造してみました。 ページ全体を描画するのは最初のアクセ…

memcacheについて昨日の記事の訂正

昨日の記事で書いたmemcacheに関する内容に2点間違いがありましたので訂正です。1つ目はmemcacheにはリストを保存できないと書いたことです。memcacheにはリストを保存できないのでJSON化した上で文字列として保存していると書いたのですが実際はリストや辞…

memcacheを使ってみました

前回のcookieを用いたセッションを書いてみました - 主にプログラムを勉強するブログという記事ではサーバー側のセッションの保存にデータストアを使用していたのですが、memcacheを使用するように書き換えてみました。データストアを使用する場合、エンティ…

cookieを用いたセッションを書いてみました

webapp2などGAE標準添付のフレームワークにもセッションの機能は用意されているのですが今回は勉強の意味も込めてcookieを利用した簡易なものを書いてみました。 IDとパスワードを用いたログイン・ログアウトの機能を持つものではなく単に利用者を識別するだ…

テンプレートを使ってみました

以前書いていたコードではPythonによるプログラム本体に、出力するHTMLがすべて文字列として埋め込まれていたため、HTML編集にIDEによるアシストや構文チェックが使えないのを不便に感じていました。 そこでテンプレートの機能を使ってPythonのコードとHTML…

GAEのデータストアを使ってみました

今回はDatastoreを使ってみました。 チュートリアルではGQLというデータベースを操作するための言語を使用した例を中心に説明されているのですが、こちらの記事などによるとGQLはこれまでにSQLを経験したことがある人がGAEを容易に使用できるようにするため…

Python2.7でGAEの基本的なコードを書いてみました

いつの間にかGoogleのサイトにPython2.7向けのGoogle App Engineチュートリアルができていたので改めて最初から読んでみました。 以前Google app engineと文字コードという記事を書いた際にはPython2.5を使用していたのですがこの時とは少なからず仕様の変更…

Google app engineと文字コード

→にも書いていますが当面の目標はGoogle app engineで何かしら作る事なのでSDKをダウンロードしてローカルで色々書いてみたりしています。基本の使い方についてはgoogleのページで説明されているのですがこれらは英語のチュートリアルをそのまま訳したものの…