Google App Engine for Python 4アプ目

このエントリーをはてなブックマークに追加
1nobodyさん
2nobodyさん:2011/04/12(火) 17:55:49.34 ID:???
日本語書籍

Google App Engine for Java [実践]クラウドシステム構築 (WEB+DB PRESS plus) (WEB+DB PRESSプラスシリーズ) (WEB+DB PRESS plusシリーズ)
http://www.amazon.co.jp/dp/4774139858/

Google App Engineプログラミング入門
http://www.amazon.co.jp/dp/4048676938/

Google App Engine 実践リファレンス
http://www.amazon.co.jp/dp/4774141275/

入門 Google App Engine for Java
http://www.amazon.co.jpdp/479802452X/

新人プログラマのためのGoogle App Engineクラウド・アプリケーション開発講座―JAVA PYTHON対応
http://www.amazon.co.jp/dp/4899772483/
3nobodyさん:2011/04/12(火) 17:58:04.38 ID:???
4nobodyさん:2011/04/12(火) 18:06:20.80 ID:???
最近の人気エントリ


Google APP Engine Python入門(2010年2月版)
ttp://d.hatena.ne.jp/kagigotonet/20100209/1265726225
> Google  APP Engineについては初期のころのまとめはあるのですが、Pythonですとリリースからそろそろ2年近くになり内容も大きく様変わりしています。
> 最速マスターシリーズでもGoogle APP Engineについてのまとめが無く、そろそろアップデートの必要があると思いまとめてみました。
>  基本的にwindows環境中心です。


Google App Engineを使って無料でサイトを立ち上げる方法
http://techblog.ecstudio.jp/tech-tips/freewebsite-with-google-app-engine.html
> このGoogle App Engine(以下 GAE)、アプリケーション開発だけでしか使えないと思われがちなのですが、実は設定を工夫すれば通常のHTMLによるサイトを作って運用することも可能です。
> 多少初期設定の手順は複雑ですが、このスペックのサーバーを無料で使用出来ることを考えれば試してみる価値はあるのではないかと思います。
> Webサイトを立ち上げるまでの手順をまとめてみましたので、公開したいと思います。


【特集】Google App Engineで開発するためのフレームワーク × 16 + α
http://coolcoding.com/2010/01/frameworks_for_gae/
> いざGAEで開発をはじめるとしても、素のままで書き始める必要はありません。
> すでに多様なフレームワークが提供されており、そうしたフレームワークを活用することでより素早くGAE上での開発ができるようになります。
> 今回はGAEで開発を行う際にチェックしたいフレームワークを紹介したいと思います。


Google App Engineで開発するスケールするアプリケーション(前編)
http://codezine.jp/article/detail/4591
> 本稿の前編では、主にGoogle App Engineの概要と特徴、そしてWebシステムをスケールするための手法、考え方について説明します。
> 中編・後編では、Google App Engine上で動作する、twitterと連携したアプリケーションを紹介し、Google App Engine上でのアプリケーション構築方法について説明します。
5nobodyさん:2011/04/12(火) 18:08:11.56 ID:???
続き


約半月で 4,000,000PV を華麗にさばく Google App Engine
http://www.1x1.jp/blog/2010/02/gae_twirate_sppspot_com.html
> このサイトはGoogle App Engine(GAE)+Pythonで構築しているのですが、このアクセス数ならではのGAE上で体験できたことをざざっと書いていきます。


第1回 Google App Engine上でLL+RDBアプリを作ろう
http://www.atmarkit.co.jp/fcoding/articles/gaephp/01/gaephp01a.html
> Web アプリケーション開発者にとって、魅力的な環境に映るGoogle App Engineだが、データの永続化などで落とし穴が存在する。
> これまでの開発手法を変えずに使えないだろうか(編集部)


Life is beautiful: Google App Engine上のベスト・プラクティス、その1: Datastore
http://satoshi.blogs.com/life/2010/02/app_engine.html
> Google App Engine上でアプリを作りはじめて約二ヶ月。いろいろと分かって来たこともあるので、自分へのメモも含めてまとめてみる。
> まずは、Datastore の話から。


GoogleAppEngine + JRubyでクリスマスまでに彼女をつくる方法
http://tech.kayac.com/archive/gae-jruby-twitter-bot.html
> というわけで彼女を作ってみました。...まさに僕だけのボット彼女です。
> 今回はこれをGoogleAppEngine+JRubyで実装したので、環境をつくるところか実際に動かすところまで説明します。


Google App Engineで独自ドメインを使う
http://www.1x1.jp/blog/2010/01/google_app_engine_my_domain.html
> GAEに設置したアプリケーションはデフォルトでは、[アプリケーションID + .appspot.com]というドメインでアクセスすることができます。
> また、これとは別に独自ドメインをアプリケーションに割り当てることもできます。
> 独自ドメインを割り当てる方法は知っていないと嵌りやすいので手順を書いておきます。
6nobodyさん:2011/04/12(火) 18:09:57.85 ID:???
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
7nobodyさん:2011/04/12(火) 18:10:59.41 ID:lXmF6dcw
   ┌─┐
   │●│
   └─┤
   _   ∩
  ( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘      おっぱい!おっぱい!
8nobodyさん:2011/04/12(火) 21:27:49.66 ID:???
その他

Python基礎文法最速マスター
http://d.hatena.ne.jp/dplusplus/20100126#p1
> ↓に便乗してPython版も書いてみました。

appengine ja night #6
http://atnd.org/events/3228
> Google App Engine (Python/Java)の勉強会です。利用者同士で実践的ノウハウを共有しましょう!

Python Hack-a-thon #4
http://atnd.org/events/2906
> 予定は未定です。日程も未定です。定員も未定です。

Python東海・Ruby東海 合同勉強会
http://atnd.org/events/3204
> PythonとRuby言語について理解を深めるのと同時にお互いの勉強会の交流のために合同勉強会を開催します。


■推奨フレームワーク
kay 圭
http://code.google.com/p/kay-framework/
日本語ドキュメント
http://kay-docs-jp.shehas.net/index.html
あとKayにバンドルしているWerkzeugのデバッガはけっこう使いやすいですよ。使い方なんかはこのあたりを見てください
http://kay-docs-jp.shehas.net/debugging.html
Google App Engineプログラミング入門 (kay の解説本)
http://www.amazon.co.jp/dp/4048676938
9nobodyさん:2011/04/12(火) 22:01:38.81 ID:???
kay使ってる人って、どれくらいいるんだろう
10nobodyさん:2011/04/13(水) 16:00:46.68 ID:???
>>1
11nobodyさん:2011/04/14(木) 20:24:42.86 ID:???
Kayはfull stackなせいかゴテゴテしてる印象があるな。
あとドキュメントが少なめだから機能が把握しにくい。
シンプルがいい人はFlask + buildoutがオススメ。
12nobodyさん:2011/04/16(土) 01:07:06.44 ID:IxYnqORC
>>1
13nobodyさん:2011/04/16(土) 06:59:50.96 ID:???
サーバー側コーディング不要のGoogle App Engine開発環境「jsonengine」(2/2):CodeZine
http://codezine.jp/article/detail/5690?p=2

もうPythonのマイクロフレームワーク「Flask」でもApp EngineのTwitter Botは15行じゃ書けない -
http://d.hatena.ne.jp/ambasa/20110317/p1

FlaskならApp EngineのTwitter Botが15行で書ける ? TRIVIAL TECHNOLOGIES 2.0
http://coreblog.org/ats/making-app-engine-twitter-bot-in-15-lines-by-using-Flask

microneを使ったらApp EngineのTwitter botが14行で書けた |TRIVIAL TECHNOLOGIES on CLOUD
http://coreblog.org/ats/writing-app-engine-twitter-bot-in-14-limes-with-aha-microne
14nobodyさん:2011/04/17(日) 10:55:32.57 ID:???
>>13
勉強になったわ
ありがとう
15nobodyさん:2011/04/17(日) 12:23:17.93 ID:???
「〇〇が簡単にできるフレームワーク」は〇〇しか簡単にできない
16nobodyさん:2011/04/17(日) 17:43:09.98 ID:???
だからこそ簡単なのです
17nobodyさん:2011/04/18(月) 22:43:42.74 ID:???
gaesynkit - Google App Engine Datastore/Client Storage Synchronization
ttp://www.reddit.com/r/AppEngine/comments/gspqf/gaesynkit_google_app_engine_datastoreclient/
18nobodyさん:2011/04/19(火) 06:32:26.01 ID:???
なんでPython 2.5なんだよぉ
2.6に対応する予定はないの?
19nobodyさん:2011/04/19(火) 08:08:38.38 ID:???
2.7なら
20nobodyさん:2011/04/19(火) 19:07:33.43 ID:???
Android の ASEをインストールし、Pythonの起動、.pyをバックグランドで実行するまでの操作を動画にしました。

Androidのバージョンは 2.2です。

WindowsSDKで実験しましたので、他の実機で動くかは保証できません。
(というより、実機が無いのでエミューレータw)

特に詳しい人じゃないので難しい質問には答えられません(キリッ


Android ASE at Python. (from japan)
http://www.youtube.com/watch?v=RHaMv5XfcDE
21nobodyさん:2011/04/19(火) 19:34:13.02 ID:???
スレチ
22nobodyさん:2011/04/20(水) 00:54:37.50 ID:???
また落ちてるよ
なんだこれ
23nobodyさん:2011/04/20(水) 21:10:53.99 ID:???
前スレは落ちたんじゃなくて埋まったよ
24nobodyさん:2011/04/22(金) 10:23:10.42 ID:???
Phthonはこちらでよろしいでしょうか?
datastoreのmodelで質問です。

ユニークキーを提供するクラスメソッドを考えてるんですが
put()をオーバーライドしてその仲でmydata.get_or_insert(key_name,ID=ID)で
エンティティを作成してみました。
あとは自分自身をこのエンティティにコピーしないといけないと思うのですが、やり方がわかりません。
class mydata(db.Model):
  def put(self):
    tmp = self.get_or_sinsert(key_name=self.ID,ID=self.ID)
    tmp = self #こんなわけない・・・エンティティ要素だけコピー?
    tmp.put()
25nobodyさん:2011/04/22(金) 10:26:23.27 ID:???
あ、追加で質問です。上記の方法だとModelのPutが呼ばれないのではないかって気が付きました。
根本から考え直す必要がありますね・・・ヒントをお願いします。
26nobodyさん:2011/04/23(土) 04:43:47.02 ID:Z9ryHxYt
質問です。
GAE+BeautifulSoup利用でスクレイピングしようとしています。
html_str = urlfetch.fetch(url).content
bs = BeautifulSoup.BeautifulSoup(html_str)
でcontent( http://may.2chan.net/b/res/47764907.htm など、主にふたば関連)を読んでもらう時に以下のエラーが出ます
TypeError: expected string or buffer

html_str = "<html><head></head><body>foo<b>hogehoge</b>bar</body></html>"
のように自前で用意した文字列、別のURL( http://nekomimi.ws/~zankuro/ )をfetchした場合に正常に動作することを確認しています。
原因はHTMLソースにあるんでしょうか?
エラーの説明と、もし分かれば解決策が欲しいです。
27nobodyさん:2011/04/23(土) 04:44:01.48 ID:???
contentがNoneになってないか?
>>> from BeautifulSoup import BeautifulSoup
>>> soup = BeautifulSoup(None)

Traceback (most recent call last):
...
File "Python27\lib\site-packages\BeautifulSoup.py", line 1915, in _detectEncoding
'^<\?.*encoding=[\'"](.*?)[\'"].*\?>').match(xml_data)
TypeError: expected string or buffer
28nobodyさん:2011/04/23(土) 04:55:29.58 ID:Z9ryHxYt
>>24
putした際に返されるkeyを自身や誰かが保持するのでは駄目ですか?
putした時点で勝手にユニークキーは一つできるし、mydata.key()で自由に参照できますが……
29nobodyさん:2011/04/23(土) 05:04:00.77 ID:Z9ryHxYt
>>27
contentがNoneかどうかはifで予め判断してます。以下ソース一部。
resultはURLかNoneを格納し、wget()はcontentかNoneを返します。
if result:
 self.response.headers['Content-Type'] = 'text/plain'
 html = self.wget(result)
 if html is None:
  return
 else:
  bs = BeautifulSoup.BeautifulSoup(html)
  a_tag = bs.find('a')
  a_tag.extract()
  self.response.out.write( str(bs) )
30nobodyさん:2011/04/23(土) 05:43:54.46 ID:???
>>29
ではlogging.info('%r', type(html))とかやって
実際に何が入っているか確認してみれば?
31nobodyさん:2011/04/23(土) 09:45:37.59 ID:???
>>28
ありがとうございます。
なるほど・・・・
前処理の考え方を変えればそれでいい感じです。
自前のユニークキーにとらわれすぎていました。
ありがとうございました。
32nobodyさん:2011/04/23(土) 13:22:53.31 ID:???
今デプロイできてます?
33nobodyさん:2011/04/23(土) 13:49:56.08 ID:???
また落ちてる
ありえん
3422:2011/04/23(土) 13:53:31.27 ID:???

治ったか

>>23
馬鹿には無理
35nobodyさん:2011/04/23(土) 14:28:05.85 ID:???
馬鹿がいるな
36nobodyさん:2011/04/23(土) 23:06:42.32 ID:???
馬鹿しかいない
37nobodyさん:2011/04/24(日) 03:33:24.35 ID:???
>>30
infoにもちゃんと'str'って表示されてたのでやたら困惑しました。
で、結局俺のコードに間違いはない(キリッってことでSOUPのバージョンを変えたところ、なぜかすっきり動いてくれました。BeautifulSoup3.1.0から3.0.8へ。
あとは文字コードで何度かエラー出されたのを修正して今は欲しいテキスト吐いてくれてます。
3.1.0と3.0.8でなにか動作違うところがあって、そこに引っかかってたんだと思うけど…面倒なんで調べないです。
38nobodyさん:2011/04/24(日) 10:49:14.20 ID:???
インデントが構文に組み込まれている屑言語なんか
使うわけねーだろw
39nobodyさん:2011/04/24(日) 21:00:16.28 ID:???
Programing Google App Engine のp.99 http://j.mp/hNgd29 には、

- url: /static/images/.*
 script: $PYTHON_LIB/google/appengine/ext/zipserve

こんな風に書いておくと/script/images.zipから読み込む的なことが書いてあるんだけど、
zipserveのソース
http://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/ext/zipserve/__init__.py
を見るとサブディレクトリから.zipを読み込むように書いていないっぽいんだけどどうなんでしょうか?

エラーログを見ると/script/images/hogeリクエストに対して
script.zipを読みに行ってCan't open script.zipっていうエラーで404を返してるみたい。
40nobodyさん:2011/04/24(日) 21:12:00.23 ID:???
その'/script'はどこから出てきたんだ?'/static'の間違い?
41nobodyさん:2011/04/24(日) 23:41:21.27 ID:???
>>40
そうだよ/staticの間違いだよ。悪かったな。
42nobodyさん:2011/04/25(月) 05:47:02.68 ID:???
切れててワラタ

平身低頭の態度がmemcache並の寿命だな
43nobodyさん:2011/04/25(月) 18:01:19.48 ID:???
db.Modelのverbose_nameを取得するにはどうしたらいいでしょうか?
44nobodyさん:2011/04/25(月) 18:10:53.03 ID:???
Model.verbose_name
45nobodyさん:2011/04/25(月) 18:37:39.33 ID:???
ごめんなさい間違えました。
class A(db.Model)
  t = db. StringProperty(verbose_name="本文")
このようなモデルクラスを定義した場合
a=A(t="これは本文")
このようなエンティティから
{本文,a.t}
という辞書リストを得るのにどうしたらよいかということです。
最終的にJSONで出力したいと思っております。
よろしくお願いします。
46nobodyさん:2011/04/25(月) 19:59:53.08 ID:???
a.t.verbose_name
47nobodyさん:2011/04/25(月) 20:05:41.58 ID:???
あ、それでいけるんですか?
コードスニペットに出てこないし、他に記述がみつからないので諦めてました。
明日テストしてみます。
48nobodyさん:2011/04/26(火) 08:14:17.49 ID:???
AttributeError: 'str' object has no attribute 'verbose_name'
やはりダメです
49nobodyさん:2011/04/26(火) 08:24:53.90 ID:???
a.properties()['t'].verbose_name
これだと取れるようです。コンソールだと文字化けするのでわかりませんけど。
というわけで、今度はプロパティ名を文字列で取得しなければならないです。
調べてみます。
50nobodyさん:2011/04/26(火) 10:50:54.12 ID:???
失礼します。
use_library('django', '1.2')でdjangoを切り替えて使っています。
pydevからは
from django.utils import simplejson
するとエディタ上エラーになります。
でもコンソールから
from django.utils import simplejson
すると通ります。
このエディタのエラーが出ないようにする方法を御存知ありませんか?
51nobodyさん:2011/04/26(火) 14:26:06.58 ID:???
>>50
djangoのとは別にsimplejsonが入っているので
import simplejsonでいける
52nobodyさん:2011/04/26(火) 15:24:09.60 ID:???
>>51
ありがとうございました!
53nobodyさん:2011/04/27(水) 01:34:31.14 ID:???
今日から始めた初心者なんですが
スタートガイドをコピペしてやったら複数行以上命令を書くと
ずらずらっと長いのがでて最後に
print ""
print "Hello"

^
SyntaxError: invalid syntax
ってでるんだけど何がだめなの?
環境がまずい?Mac snow leopard, python2.6.1です。
54nobodyさん:2011/04/27(水) 04:14:16.76 ID:???
>>53
駄目なのは思いやりが9割とバージョンが1割くらい
55nobodyさん:2011/04/27(水) 07:57:33.25 ID:???
何行目が駄目って出てるはずだからそこをチェックする
56nobodyさん:2011/04/27(水) 08:17:20.98 ID:???
>スタートガイドをコピペしてやったら複数行以上命令を書くと

自分で打ち込め
57nobodyさん:2011/04/27(水) 11:35:17.04 ID:???
>>53
スタートガイドのどのコードなのかをURLで示してくれ。
じゃないとなんともいわれん
58nobodyさん:2011/04/27(水) 17:39:18.75 ID:B5LBmMkm
作者のソースコードが元から間違ってるのかも知れないし
本に印刷するときにミスプリしたのかも知れないし
>>53 がコピペするときに変なコード(全角空白とかインデント崩れとか)になったのかも知れないし
>>53 が正真正銘の馬鹿かも知れないし
ただの釣りかも知れないし
5953:2011/04/27(水) 23:35:18.44 ID:???
>>54-58
ありがとうございます。
ソースとエラーログをこっちにあげました。
http://www1.axfc.net/uploader/Sc/so/228516.zip

スタートガイドはgoogle のです。
http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/helloworld.html

ターミナルからpythonを実行させる時は問題なく出力されます。
60nobodyさん:2011/04/28(木) 00:42:20.55 ID:???
>>59
改行コードだね。¥nではなく¥rになってる。Macの古いエディタでも使ったのだろう。
perl -pi.bak -e 's/¥r/¥n/g' sandbox.py
としたら直るかも。
6153:2011/04/28(木) 01:18:58.75 ID:???
>60
サンクス!
改行コードがCRってのになってました。
LFに切り替えたら実行できました。
62nobodyさん:2011/04/28(木) 04:24:22.64 ID:???
しかし、「改行コード腐ってない?」ってサジェストしてくれるインタープリターやコン
パイラって無いのかね。あった気もするが。
6353:2011/04/28(木) 08:23:26.98 ID:???
普通に実行する分については改行コードは意識しなくていいのに
GAEでは改行コードが問題になるのはなんでですか?
64nobodyさん:2011/04/28(木) 19:42:06.83 ID:???
>>63
きみの手元でうまくいっているのは、たまたま君のマシンがMacだからじゃね?
Googleの環境はLinuxだから、Mac上のPythonでは動いてLinux上のPythonでは動かないとか。
あてずっぽうだけど。
65nobodyさん:2011/04/28(木) 20:36:08.12 ID:???
GAEのOSってLinuxなの?
まあ、他にない気もするが。
6653:2011/04/28(木) 22:36:45.13 ID:???
>>64
そうなんすかね?
ただGAEの鯖にあげずにローカルでやってたんですけどね。
67nobodyさん:2011/04/29(金) 10:34:41.20 ID:???
>>66
ローカルで実行するときとGAEでテストするときとで、同じpython使ってる?
ローカルで実行する時は/opt/local/bin/pythonで、GAEのときは/usr/bin/pythonってことはない?
違ってたらごめん
68nobodyさん:2011/04/29(金) 11:25:31.47 ID:???
GAEの設定はブランクで動いてますね。
ターミナルで動かす時は
python hoge.py

/usr/bin/python hoge.py
でうごきます。
/opt/local/bin/python とか/usr/local/bin/python2.5 とかで叩いても
No such file or directory って言われます。
GAEはどこのpython叩いてるんだろ...
69nobodyさん:2011/04/29(金) 12:03:10.77 ID:???
GAEは/usr/bin/env pythonでしょう
70nobodyさん:2011/04/29(金) 15:17:29.94 ID:???
results = db.GqlQuery("SELECT * FROM testdata")

KindError: No implementation for kind 'testdata'

って出ます。しかし、Datastore Viewerにはちゃんとtestdataがあります。
インデックスはindex.ymlで設定したものがまだDatastore Indexesには出てません。
これですかね?
IndexErrorだった気がするんですが?

全件取得なのでインデックス関係ないと思うのですが・・・
71nobodyさん:2011/04/29(金) 16:04:13.61 ID:???
>>70
testdataがあっても、それが正しくモデルクラスとして定義されてなかったらエラーになるんじゃないかな
72nobodyさん:2011/04/29(金) 17:20:00.19 ID:???
>>71
ありがとうございます。
Datastore Viewerの中では
SELECT * FROM testdata
を実行することができ、データも表示されます。
db.GqlQueryを実行するクラス内ではクラスtestdataはインポートしていません。
ただし別のモジュールでは
class testdata(db.Model):
定義してあります。

これはモデルクラスとしてとして定義されていない状態なのでしょうか?
73nobodyさん:2011/04/29(金) 21:28:22.52 ID:???
同じモジュール内でモデルクラスを定義したら動作しました。
db.GqlQueryはモデルクラスと同じモジュール内に書かないとダメってことでしょうか?
74nobodyさん:2011/04/29(金) 21:54:31.01 ID:???
インポートすればいい。
from xxx import testdata
みたいに。
75nobodyさん:2011/04/29(金) 23:16:53.54 ID:???
うまく行きました。
しかしモデルクラスは引数の文字列の中にしか出てこないのになぜクラス定義が必要なのかいまいちわかりません。
下位モジュールがどのように参照しているのかもわからない・・・。
第一引数がselfだからでしょうか?
それにしてもpydevではunused import になるのもなんだかなー
76nobodyさん:2011/04/29(金) 23:17:52.75 ID:???
あ、ありがとうございました。感謝です。
77nobodyさん:2011/04/30(土) 18:13:36.18 ID:???
あれー、static_dirとして指定したパスにあるファイルをgetメソッドで取ろうとしたら、
Last-Modifiedヘッダがついてないんだけど、そんなもの?
このヘッダがないから、毎回ダウンロードするはめになって、通信量がもったいないんだけど。

78nobodyさん:2011/04/30(土) 18:22:22.85 ID:???
>>77
これは昔からの仕様みたいだな。
ttp://code.google.com/p/googleappengine/issues/detail?id=368
ここを見る限り、2008年5月にissueが登録されて、2011年4月には「SDK1.4.3でも直ってないぞ」と言われてる。
うわ、GAEいけてねーな。タイムスタンプ考慮してくれないんだったら、static_dirの価値はあんまりないな。
79nobodyさん:2011/04/30(土) 19:10:21.71 ID:???
ETagは吐いてるっぽい
80nobodyさん:2011/05/01(日) 04:26:14.86 ID:???
Eclipse/pyでデプロイしてたら静的コンテンツ置いてるディレクトリに対して
warning: Not importing directory '\workspace\app_name\src\stat': missing __init__.py
なんて出たんだけど、__init__.pyってどんなディレクトリにも置かないといけないものなの?
81nobodyさん:2011/05/01(日) 06:07:13.84 ID:???
>>80
>warning: Not importing directory '¥workspace¥app_name¥src¥stat': missing __init__.py

workspace¥app_name¥src が、Pythonの検索パス sys.path に含まれてて、
かつどっかで import stat とかやってるんだろ。
静的コンテンツを置くフォルダ名を変えてみるか、import statしている箇所を探してなんとかするか。
82nobodyさん:2011/05/01(日) 13:06:04.95 ID:???
教えてください。
q = db.GqlQuery( "SELECT * FROM UserAgent Where Carrier='DoCoMo'" )
if q.count() >= 1
これ以外にデータがあるかどうかの判定はできませんか?
この方法だとデータを一回ループするのに等しいと書いてあったので
if q:
これだとオブジェクトは帰ってきてるらしいのでいつでもTrueです。
83nobodyさん:2011/05/01(日) 13:16:38.10 ID:???
84nobodyさん:2011/05/01(日) 13:37:20.94 ID:???
>>82
limitをつければいいんじゃないかな。
あとGoogle的には,キャリアごとにデータが存在するかどうかを表したモデルを用意するのが定石じゃないかな。
class CarrierName(Model):
 name = Property('String')
だけのモデルを用意して、UserAgentエンティティを保存する時にCarrierNameも更新する。
85nobodyさん:2011/05/01(日) 14:06:24.02 ID:???
>>83
あ、なるほど、limi 1 って一個取得したらループ抜けてくれるんですね。なるほど!
>>84
ありがとうございます。参考になりました。
86nobodyさん:2011/05/02(月) 12:30:00.47 ID:???
アプリケーションのルートディレクトリって、どうやって取得するんだっけ?
今は os.path.dirname(__file__) とかしてるんだけど、これだとファイルの位置を
変えるとうごかなくなるから、もっとうまい方法を知りたい。
87nobodyさん:2011/05/02(月) 15:06:04.49 ID:???
>>81
>静的コンテンツを置くフォルダ名を変えてみるか
で対応した。解決したら原因別にどうでもいいや。
88nobodyさん:2011/05/02(月) 16:27:49.14 ID:???
疑問をどうでもいいやで放置していく習慣をもったエンジニアは伸びないね。経験上。
89nobodyさん:2011/05/02(月) 16:44:35.67 ID:???
Pythonを流行らせたかったGoogleさんは出来ればPythonのバージョンの選択肢も増やして欲しかった
90nobodyさん:2011/05/02(月) 16:56:46.37 ID:???
>>89
増やさなくてもいいけど、最初から2.5じゃなくて2.6にしてほしかった。
AppEngine公開当時ですでに2.6はリリースされてたんだし。
91nobodyさん:2011/05/02(月) 17:43:03.27 ID:???
2.xと3.xの選択肢を作ってもらいたい
ていうかRubyもPHPも正式に対応してファイルの書き込みも出来るようにしてくれよ
azureに負けちゃうよ
92nobodyさん:2011/05/02(月) 19:52:47.24 ID:???
>>91
azureの利点を詳しく
93nobodyさん:2011/05/02(月) 20:08:40.35 ID:???
wordpressが動くこと
94nobodyさん:2011/05/02(月) 20:28:19.55 ID:???
>>93
それはたしかに大きい!
でもwordpressならazureじゃないほうがよくね?
95nobodyさん:2011/05/02(月) 21:47:45.46 ID:???
GAEは無料なのが良いんじゃないの?
96nobodyさん:2011/05/02(月) 22:43:34.20 ID:???
Visual studioで開発できるのはうらやましい
97nobodyさん:2011/05/02(月) 22:44:54.48 ID:???
PyDevがあるでしょ
98nobodyさん:2011/05/03(火) 00:00:12.50 ID:???
いやらしいようないやらしくない響き
99nobodyさん:2011/05/03(火) 00:08:33.35 ID:???
パイデブ
100nobodyさん:2011/05/03(火) 00:13:13.92 ID:???
PyPyやpypanはどうなる。とうてい声に出して言いたいとは思わない
101nobodyさん:2011/05/03(火) 01:46:09.39 ID:???
>98
PyPI!PyPI!!
102nobodyさん:2011/05/03(火) 01:52:51.88 ID:???
Deployすると動かない。
全く表示されないから手がかりがつかめないや
103nobodyさん:2011/05/03(火) 05:56:38.40 ID:???
>>102
logging入れまくれ
104nobodyさん:2011/05/03(火) 11:59:09.47 ID:???
>>102
http://appengine.google.com/ にログインしてアプリケーションを選ぶと
管理画面になるから、そこからエラーのログを見てみたら?
105nobodyさん:2011/05/03(火) 13:12:41.73 ID:???
key_name に指定出来る文字列の最大長っていくつですか?
106nobodyさん:2011/05/03(火) 15:13:27.31 ID:???
こんなサービスが無料だなんて、
広告付けるタイプの無料レンタルサービスは潰れちゃうんじゃないの。
107nobodyさん:2011/05/03(火) 15:59:58.77 ID:???
それGAE使ってから言ってる?
108nobodyさん:2011/05/03(火) 16:38:50.39 ID:???
mysqlかpostgresqlが使いたい
azureでは使えるのに
109nobodyさん:2011/05/03(火) 16:39:33.74 ID:???
>>106-107
GAEのサービスが始まってから何年も経ちますが
広告付けるタイプの無料レンタルサービスは潰れましたか?
110nobodyさん:2011/05/03(火) 23:02:37.60 ID:???
>103 >104
文字コードの宣言の位置が変な所にあった。
すみません。
111nobodyさん:2011/05/04(水) 00:33:44.50 ID:???
>>110
あやまるのはいいから、それをどうやってみつけたかを報告するのだ
112nobodyさん:2011/05/04(水) 01:19:05.93 ID:???
>111
#!-*- coding:utf-8 -*-
を一番上にちゃんと持って来てなかったのが原因でした。
113nobodyさん:2011/05/04(水) 01:30:24.09 ID:???
>>112
いやだからどうやってみつけたかをきいているんだがつうじてないようだ
114nobodyさん:2011/05/04(水) 02:04:13.16 ID:???
他のコード見比べたりとかじゃだめ?
115nobodyさん:2011/05/04(水) 09:40:51.27 ID:???
Prerelease SDK 1.5.0 available for download - Google App Engine | Google Groups
http://groups.google.com/group/google-appengine/msg/ac6accdf8e5096f4
116nobodyさん:2011/05/04(水) 10:16:35.76 ID:???
>>115
そこにでてくる Federated Users ってなに?
あと Metadata queries も何のことかわからない。教えて。
117nobodyさん:2011/05/04(水) 10:31:45.70 ID:???
eclipseが重いからテキストエディタだけで作業したいんだけど
プロジェクト作成する時とアップロードする時だけeclipse起動するのが面倒くさい
全てテキストエディタで完結できればな
118nobodyさん:2011/05/04(水) 11:01:58.38 ID:???
>>117
アップロードはappcfg.pyでやれよ
119nobodyさん:2011/05/04(水) 11:30:51.38 ID:???
なんでpythonなのにeclipse使ってるの?
120nobodyさん:2011/05/04(水) 13:05:25.85 ID:???
だめ?
121nobodyさん:2011/05/04(水) 13:09:53.49 ID:???
逝ってよし
122nobodyさん:2011/05/04(水) 13:59:53.86 ID:???
ダメじゃないけど、
>>117が今までeclipseを使ってた理由がわからないな
123nobodyさん:2011/05/04(水) 14:42:00.45 ID:???
メジャーなのはCotEditorとか?
124nobodyさん:2011/05/05(木) 14:08:23.22 ID:???
GQLのクエリの長さってどれくらいが限度か情報ありませんか?
親の検索条件に子条件を無限数設定できるようにしたのですが、どこらへんで止まるでしょうか?

ご存じの方教えてください
125nobodyさん:2011/05/05(木) 15:15:31.56 ID:???
django nonrel使ってる人居ます?
126nobodyさん:2011/05/05(木) 16:24:51.30 ID:???
>>124
クエリの長さっていうのが、単にGQL文字列の長さのことをいっているのであれば、制限はないと思う。
ただし、
ttp://code.google.com/intl/ja/appengine/docs/python/datastore/queriesandindexes.html
によると
> != および IN 演算子を含む単一のクエリのサブクエリは 30 個に制限されます。
とあるから、指定可能な検索条件は最大で30個 (!=やINを含むとそれ以下)なんじゃなかろうか。
127nobodyさん:2011/05/05(木) 16:27:07.06 ID:???
class Foo(db.Model):
 x = db.StringProperty()
 y = db.StringProperty()
とあったとき、
Foo.all().filter('x =', 10) のような指定はできますが
Foo.all().filter('x = y') のような指定はできないでしょうか。

128nobodyさん:2011/05/05(木) 16:31:58.83 ID:???
>>126
ありがとうございます。
その制限は把握していたのですが、ANDをいくつくっつけられるかっていのは制限がなく
検索時間とかで制限受けるのでしょうかね?
検索条件が可変長なので作ったら結果がわかるのでまたお知らせします。
129nobodyさん:2011/05/05(木) 16:45:40.54 ID:???
>>127
自前でフラグを用意するしか方法はないんじゃない?
既存のデータにフラグを追加するのはMapper API使えば簡単にできるよ
130nobodyさん:2011/05/05(木) 20:55:09.96 ID:???
モデルオブジェクトのsetterでフックをしかけることはできますか。
class Foo(db.Model):
 val = db.StringProperty(validator=func)
のように、バリデーション用関数を指定できますが、これはあくまで値が
正しいかどうかを検証するためのものでしかありません。
そうではなく、たとえば
obj.val = "FooBar"
print obj.val #=> 'foobar'
のように、値を自動的に変更するようなことがしたいです。
131nobodyさん:2011/05/05(木) 22:01:45.16 ID:???
132nobodyさん:2011/05/06(金) 11:07:06.12 ID:???
gae+twitterで面白いサイトって作れるの?
133nobodyさん:2011/05/07(土) 01:17:38.91 ID:???
>>132
TwitBOTをRSS的使い方するくらいしか思いつかんなぁ
ユーザ生成コンテンツを利用する前提ならもっとあるだろうな
134nobodyさん:2011/05/07(土) 01:27:14.80 ID:???
botのcronのためだけにgaeを使う方法を解説してるページが多い。
135nobodyさん:2011/05/07(土) 10:34:47.57 ID:???
>>131
モデルオブジェクトではすでにプロパティが使われているので、それに重ねてプロパティを設定する方法はありますか。
自分で調べた限りではありませんでした。
class Foo(db.Model):
 val = db.StringProperty() # ← これがすでにプロパティになっている
136nobodyさん:2011/05/07(土) 12:09:39.13 ID:???
ドキュメントルートの外にファイルを置くというのは
WEB-INF以外の場所にファイルを置くという認識で大丈夫ですか?
137nobodyさん:2011/05/07(土) 12:32:11.10 ID:???
こっちはPythonスレですよ
138nobodyさん:2011/05/07(土) 21:35:02.90 ID:???
pythonで作った場合はWE-INFってないの?
139nobodyさん:2011/05/08(日) 00:34:33.50 ID:???
>>132
twitlogがGAE使ってたはず
140nobodyさん:2011/05/10(火) 00:49:00.23 ID:???
ゴミみたいなBOTはノイズ
141nobodyさん:2011/05/10(火) 15:43:44.63 ID:???
GQLの結果セットのマージの仕方を教えてください

gqlobjA = modelA.gql("WHERE a = 'A'")
gqlobjB = modelA.gql("WHERE b = 'B'")

こうやって取得したGQLオブジェクトをマージしたいです
OR連結と同じ結果が取得したいので重複値を取り除きながら結合するにはどうしたらいいでしょうか?
142nobodyさん:2011/05/10(火) 22:14:35.10 ID:???
>>141
よくわかんないけどPythonのset()を使って和集合をとるというのはどうだろうか。
set(list1) | set(list2)
でlist1とlist2のどちらかに含まれる要素をもつ、新しいsetができる。
143nobodyさん:2011/05/10(火) 22:21:11.58 ID:???
同じエンティティが同じオブジェクトとは限らないだろうから
key()で比較するしかなさそう
144nobodyさん:2011/05/11(水) 00:37:08.23 ID:???
>>142
なるほど、これでいけるかも知れないですね・・・コードは簡略になります。

>>143
 for b in dataset:a
  for t in datasetb:
   if t.key() == b.key():
    break
  else:
   datasetb.append(b)

こういう感じですかね?


ORがないのでこういう処理は結構あるとおもうのですが簡単に見つかりませんね。
ありがとうございました。
両方テストしてみます。
145nobodyさん:2011/05/11(水) 05:49:24.45 ID:???
>>144のコードは効率が悪いからsetを使うべき
for t in datasetb: if t.key() == b.key(): break というのはdatasetbの長さぶんだけ繰り返しを行うので時間がかかるが
setを使えばこの部分が一瞬で終わる。
146nobodyさん:2011/05/11(水) 09:24:14.06 ID:???
>>145
setでやってみます
147nobodyさん:2011/05/11(水) 21:12:58.30 ID:???
support Go language!
148nobodyさん:2011/05/13(金) 06:27:45.92 ID:???
751 名前:nobodyさん[sage] 投稿日:2011/05/12(木) 02:45:16.19 ID:???
http://googleappengine.blogspot.com/2011/05/year-ahead-for-google-app-engine.html
http://www.google.com/enterprise/appengine/appengine_pricing.html
課金モデルが変更されるのか

CPU時間からインスタンス時間へ変更
無料枠(per day)は下記の通りに変更される
(旧)6.50 CPU時間
(新)24 インスタンス時間

Always On($0.30/day)から Reserved Frontend Instances($0.05 / hour)プランに変更
(旧)月当たり9ドル($0.30/day * 30 day = $9)
(新)月当たり36ドル($0.05/ hour * 24 hour * 30 day = $36) ?
※Always Onは3インスタンス常時起動で、新プランが1インスタンス常時起動の価格だとすれば、Always On相当にするにはこの3倍、約108ドル必要?)

よく内容を精査していないから分からないが、改悪っぽいのかな?
公式ブログに寄せられたコメントは「残念だ、がっかりした、嫌だ、反対だ」だらけ(笑

752 名前:nobodyさん[sage] 投稿日:2011/05/12(木) 05:47:12.83 ID:???
外人さんの悲痛な叫び

I have a dev app that uses currently about 40cpu hours a day, has ~16 active instances
on average and serves ~7.5 requests/second. Right now I am paying ~120$ a month.
(俺は現在、1日当たりおよそ40CPU時間、平均16のアクティブなインスタンス、7.5リクエスト/秒
くらいのアプリケーションを運用していて、ひと月あたり120ドル払ってる。)

With the new pricing model I would have to pay for the instances alone ~921.6$ a month.
For api usage about 200$ and the base fee of 9$ thats summerized 1130.6$ or in other
words a price change of 942%. Thats immoral and illegal for a good reason in most european countries.
(新しい課金モデルで計算しなおすと、インスタンスだけで月921.6ドルも払わなきゃいけなくなる。
API使用料は約200ドルで、基本使用料が9ドルだから、総額1130.6ドル、別の言葉で言い表すと942%の増額だ。
これは多くのヨーロッパの国々で、不道徳かつ違法となる十分な理由になるぜ。)
149nobodyさん:2011/05/14(土) 14:31:21.23 ID:???
from google.appengine.ext import db
obj = db.get(db.key('aaa'))
とすると
AttributeError: 'module' object has no attribute 'key'
となります。
import のやり方が悪いのでしょうか?
obj = db.get('aaa')
でも動くのですが公式に乗ってるやり方でエラーがでるので気持ち悪いです。
150nobodyさん:2011/05/14(土) 14:32:50.03 ID:???
値上が違法?
Oracleとか末代まで恨まれるだろうな
151nobodyさん:2011/05/14(土) 14:41:16.33 ID:???
>>149
db.keyじゃなくてdb.Key
152nobodyさん:2011/05/14(土) 14:52:54.27 ID:???
ああああああ orz

ありがとうございました
153nobodyさん:2011/05/16(月) 21:56:03.50 ID:???
つまらない一発ネタのWEBサービスいくつか作って遊んでたけど、結局googleの手の上で
あそばされていただけと思ったら急にむなしくなった。
154nobodyさん:2011/05/17(火) 07:52:40.52 ID:???
ここまでPythonやる気にさせといてハシゴ外された…
155nobodyさん:2011/05/17(火) 11:30:54.99 ID:???
<input type="checkbox" name="prefselect" value="東京" selected/>
<input type="checkbox" name="prefselect" value="埼玉"/>
<input type="checkbox" name="prefselect" value="千葉" selected/>

self.request.getを使って東京都千葉を取得する方法はありますか?
request.POST.getlist("prefselect")
これだと思ってたらリファレンスにありません
156nobodyさん:2011/05/17(火) 11:49:48.75 ID:???
試してないけどrequest.POST.getall("prefselect")かな?
http://pythonpaste.org/webob/reference.html#query-post-variables
157nobodyさん:2011/05/17(火) 12:35:17.64 ID:???
>>156
あれ・・・WebObさんの中にいらっしゃいましたか・・・
grepかけただけで諦めちゃいけませんね
ありがとうございました
158nobodyさん:2011/05/17(火) 21:29:10.55 ID:???
>>154
Goやろうぜ!
159nobodyさん:2011/05/17(火) 23:26:04.26 ID:7/0cbQ2l
PythonとJavaとどっちでやるのがいいん?
PythonでもEclipseでローカルサーバのテストからデプロイまで支援があるの?
160nobodyさん:2011/05/17(火) 23:30:39.94 ID:???
残念ながらPythonは…
161nobodyさん:2011/05/17(火) 23:44:57.93 ID:???
値上げかあ。
1インスタンスだけなら24時間上げっぱなしでも無料ということだよね。
そんなにアクセスのあるサイトじゃなければ、1インスタンスでもけっこういけるんじゃないかと思うけど、どう?

インスタンス数って自分で制限できるのかな。
162nobodyさん:2011/05/18(水) 01:23:41.89 ID:???
Python Java Goそれぞれのメリットデメリットを教えてください
163nobodyさん:2011/05/18(水) 08:22:02.53 ID:???
課金だと基本料金で月9ドルかかるのか
激安鯖なら年間料金だぞ
164nobodyさん:2011/05/19(木) 07:18:02.59 ID:???
http://twitter.com/higayasuo/statuses/70732476959559680
higayasuo (higayasuo)
Python 2.7 on appengineでconcurrent requestsをサポートするらしい。
その作業が終わるまではpythonのインスタンスあたりのコストはJavaの半分になるようだ #gaeja
165nobodyさん:2011/05/19(木) 09:54:52.72 ID:???
Javaだとマルチスレッド化でインスタンス数をかなり減らせるらしいね
pythonはゴミ決定
166nobodyさん:2011/05/19(木) 10:12:01.82 ID:???
ん?気づかないうちにマルチスレッド使えるようになったん?
167nobodyさん:2011/05/19(木) 23:51:07.62 ID:???
どんなものかと思って初めてアプリ上げてみた。意外に簡単にできるんだな。
でもアイデアがない。
168nobodyさん:2011/05/21(土) 02:50:17.57 ID:???
なんか面白いネタない?
169nobodyさん:2011/05/21(土) 03:04:32.71 ID:???
ない。
170nobodyさん:2011/05/21(土) 10:31:33.90 ID:???
GQLから得たクエリオブジェクトから目的の列だけ選んだ辞書配列を作りたいです。

tbl = [fieldA,fieldB for fieldA,fieldB in modelA]
171nobodyさん:2011/05/21(土) 10:38:21.26 ID:???
tbl = [prop for prop in modelA if prop.fieldA == 'hoge']
172nobodyさん:2011/05/23(月) 07:54:57.53 ID:???
誰か新しい料金体系について日本語でまとめてください
173nobodyさん:2011/05/23(月) 12:37:14.51 ID:???
「タダより高い物はない」
174nobodyさん:2011/05/24(火) 11:17:50.30 ID:???
appcfg.py update の

Deploying new version.
Checking if new version is ready to serve.
Will check again in 1 seconds.
Checking if new version is ready to serve.
Will check again in 2 seconds.
Checking if new version is ready to serve.

これって、なんで何度もチェックしてるの?
175nobodyさん:2011/05/24(火) 17:32:12.20 ID:???
>>172
今までの約10倍の値上げ
有料プランは、月々9ドル必ずかかる
無料プランは使い物にならない

結論 GAE終了
176nobodyさん:2011/05/24(火) 22:05:44.86 ID:???
確かにいまさらで考えてみると、今までの条件は美味しすぎたな
一応うたい文句的には完全に無料で月間約500万ページ ビューに対応できるってんだろ

結局得したのはアーリーアダプターである程度稼げた奴か
177nobodyさん:2011/05/24(火) 23:02:00.02 ID:???
無料で提供される玩具としては最高だったけどな
他の会社が追随しないところを見ると、やっぱり利益度外視だったのだろう
178nobodyさん:2011/05/25(水) 05:50:25.72 ID:???
で、この料金体系とAmazonを比べてみるとどうなの?
179nobodyさん:2011/05/25(水) 06:16:36.31 ID:???
自分で比べろよ
180nobodyさん:2011/05/25(水) 13:45:53.51 ID:???
どうなのって人に聞いてるやつに対して自分で比べろってのも筋違いなレスだよな
まぁ俺も答える気はないが
181nobodyさん:2011/05/25(水) 17:11:18.72 ID:???
Yahoo知恵袋ではよくある光景
182nobodyさん:2011/05/28(土) 11:50:17.21 ID:???
9ドルのせいで二の足を踏む
また値上げされるんじゃないかと考えて三の足を踏む
183nobodyさん:2011/05/28(土) 18:06:23.08 ID:???
>>182
俺の中でGAEは死んだ。あぁー
184nobodyさん:2011/05/30(月) 05:55:04.35 ID:???
久々のOver quotaきたああああ
185nobodyさん:2011/05/30(月) 21:23:22.07 ID:???
サンプル動かすともうやることがなくなっちゃう。
186nobodyさん:2011/05/31(火) 01:17:15.73 ID:???
無料の制限がきつくなりすぎだろ
途中まで作ってたけど、有料だと月9ドル払わされるし、別のところに行ったほうが良さそうだな
187nobodyさん:2011/05/31(火) 19:59:01.24 ID:???
サンプル動かしただけでOverQuotaぁぁぁぁーーー
188nobodyさん:2011/06/01(水) 01:16:09.55 ID:???
GAEはオワコン
189nobodyさん:2011/06/01(水) 01:26:21.99 ID:???
>>186
あてはあるのか?
190nobodyさん:2011/06/01(水) 02:06:11.04 ID:???
cloud9が無料化
191nobodyさん:2011/06/01(水) 14:03:16.22 ID:???
で結局AmazonEC2の代わりになるの?
1秒に何回のリクエストに耐えられるの?
192nobodyさん:2011/06/01(水) 15:14:07.80 ID:???
193nobodyさん:2011/06/01(水) 21:42:22.59 ID:???
もうちょっと可能性について語ってください
194nobodyさん:2011/06/01(水) 22:33:24.03 ID:???
>>187
どういうサンプル?
195nobodyさん:2011/06/01(水) 22:41:49.70 ID:???
>>194
メールを101通送信するだけでOverQuotaぁぁぁぁーーー
196nobodyさん:2011/06/02(木) 17:39:25.81 ID:???
http://code.google.com/intl/ja/appengine/docs/quotas.html
一日2000人 までは可能
ただし 8人/分 を守らないとオワコン
197nobodyさん:2011/06/02(木) 17:42:34.97 ID:???
1通あたり6kBあると100人で死ねるな
198nobodyさん:2011/06/02(木) 19:00:07.74 ID:???
すみません
GAEのDjangoテンプレート言語で
下記サンプルのようにstory_listの反復をfor文で記述する場合
story.categoryの内容が変化するたびにdivで区切りたいのですが
そのような書き方はありますか?
categoryはあらかじめソートしてあります

{% for story in story_list %}
<h2>
<a href="{{ story.get_absolute_url }}">
{{ story.headline|upper }}
</a>
</h2>
<p>{{ story.tease|truncatewords:"100" }}</p>
{% endfor %}
199nobodyさん:2011/06/02(木) 19:53:18.16 ID:???
あらかじめ
[[ "カテゴリ1", [story1, story2 ...]], ["カテゴリ2", [story3, story4... ], ...]
みたいなデータを作っておく
200nobodyさん:2011/06/02(木) 23:22:00.71 ID:???
無料アカウント? でやってて有料になるときってなんか警告とかあるんだよね。
クレカの登録とかしてないし。
201nobodyさん:2011/06/02(木) 23:43:44.67 ID:???
>>200
勝手に有料にはならない。無料枠を使い切ったら止まるだけ
Google App EngineでCPU Timeを使い切った - Shin x blog
ttp://www.1x1.jp/blog/2010/01/google_app_engine_over_quota.html
202nobodyさん:2011/06/03(金) 08:55:30.23 ID:???
ああ やっぱり・・・ 了解しました
203nobodyさん:2011/06/07(火) 15:24:25.04 ID:???
ソースコードをダウンロードする機能って公式で対応してなかったっけ?
204nobodyさん:2011/06/07(火) 15:32:23.35 ID:???
205nobodyさん:2011/06/07(火) 16:13:43.69 ID:???
>>204
さんくす。英語のリファレンスみたいとダメなのか。
206nobodyさん:2011/06/08(水) 03:53:01.85 ID:???
結局一時話題になっただけど、だんだん尻すぼみになってるの?>App Engine
207nobodyさん:2011/06/08(水) 18:21:55.20 ID:???
>>206
googleの課金代行は期待したい
それがあれば有料でGAE使っても良いと思える
208nobodyさん:2011/06/09(木) 19:07:22.84 ID:???
GoogleもPaypalみたいな少額決済サービスはじめてくれないかな・・・
209nobodyさん:2011/06/09(木) 19:13:39.54 ID:???
gaeで作ったのを他に移植したいんだけど、考えるだけで大変…
210nobodyさん:2011/06/10(金) 03:11:06.43 ID:???
>>209
誰かラッパー書いてないのかYO?
211nobodyさん:2011/06/10(金) 08:30:43.00 ID:???
dev_appserverをそこそこの運用レベルまでもっていけないものか
212nobodyさん:2011/06/10(金) 13:29:13.21 ID:???
>>210
書いたyo
213nobodyさん:2011/06/11(土) 16:26:16.88 ID:???
今日デプロイできてますか?
214nobodyさん:2011/06/11(土) 18:13:00.28 ID:???
新規にGAEアプリを作る意味あるかな
ただで使えると思って勉強してたのに
215nobodyさん:2011/06/12(日) 00:13:28.76 ID:???
>>209, 211
AppScaleは?
216nobodyさん:2011/06/12(日) 12:15:19.12 ID:???
datastoreのインデックスについて教えてください

- kind: data
properties:
- name: field1
- name: field2
- name: field3

検索にfield1を含めないパターンもあるとしたら

- kind: data
properties:
- name: field2
- name: field3

このようなインデックスも必要ですか?
現在エラーは出ないもののデータが取得できない現象になってます。
ローカルでこのような検索をしてもインデックスは増えません。
このような場合は直接index.yamlを編集すべきなのでしょうか?

また、ソート順を変えたい場合

- kind: data
properties:
- name: field1
- name: field3
- name: field2

のようなインデックスも必要でしょうか?
初歩的な質問で申し訳ありません。よろしくお願いいたいします。
217nobodyさん:2011/06/12(日) 12:44:14.77 ID:UzIQ9PDJ
sageてしまったので上げときます
218nobodyさん:2011/06/12(日) 12:54:03.34 ID:???
>>216
自分で試してから結果を教えてね
219nobodyさん:2011/06/12(日) 14:14:45.40 ID:UzIQ9PDJ
試したところ必要でした。
お騒がせしました。

ソートに関してはまだ未検証です。
220nobodyさん:2011/06/12(日) 17:24:36.03 ID:+q+sCwIP
群馬県高崎市に住む39歳AB型、製造業界で派遣プログラマーの仕事をしているhekenekoと申します。
新日本テクトスという会社を追われ、その後どうしてよいかわからなくなりました。
だけど私の大好きな尾崎豊の歌に励まされ、夢であるプロのクリエイターを目指すことにしました。
何度も挫けそうになりましたが、尾崎豊の歌を聞きながら自分を励ましています。
今も尾崎豊の歌のおかげで、夢を諦めずにCGアニメの製作を続けられています。

とりあえず、以下の動画を見てください。一生懸命作ったもので、自分では既にプロレベルの傑作だと思ってます。
できればみなさんのご意見、ご感想を聞きたいです。

復興支援アニメ.mp4
http://www.youtube.com/watch?v=yn4uTiN8vvM

湾岸鉄道キャンペーンCM(カラー).mp4
http://www.youtube.com/watch?v=g3PlX1OAhug&feature=channel_video_title


これは力作で、にしおかすみこさんにも是非見てもらいたかったため彼女のブログにコメントしたんですが無視されました。
http://blog.watanabepro.co.jp/nishiokasumiko/archives/2008/02/22_15_post_22.html
(下の方にあります。投稿者: hekeneko | 2008年03月24日 22:54)
やはり私の才能に気づいてくれる人は中々いないみたいですね(苦笑)。


題名”ラダニアムの翼”
A wing of radaniam_partU.mp4
http://www.youtube.com/watch?v=keSK70uqDJY
A wing of radaniamu part_V.mp4
http://www.youtube.com/watch?v=-LRZbXbirR0

題名”hekeneko honey”
http://www.youtube.com/watch?v=kATwf6fAkG8
私の世界観の全てを凝縮した力作です。hekenekoワールドをご堪能あれ。
221nobodyさん:2011/06/13(月) 06:35:27.96 ID:???
>>219
ソート順についても必要
あとあまり沢山index作るとそれ以上作れなくなってアプリ全体が動かなくなる
出来れば一つのindexで項目を無視出来るような条件(たとえば a > 0 みたいな)にする方が吉
222nobodyさん:2011/06/14(火) 13:44:24.36 ID:ZF/JY4UT
>>221
回答ありがとうございます。
100こくらいプロパティがあるモデルを40くらいの条件で検索しようとしてました。これはやばいですね。
なるべく絞り込まず、同じ検索条件で分けてオンメモリで振り分けるとか工夫が必要そうです。
ありがとうございました。
223nobodyさん:2011/06/14(火) 15:00:54.63 ID:???
自分もindexについて質問です
本デプロイではindex数に制限があるので、既に作って登録されたindexのうち、
もう使われていないindexを削除したいのですが、
どうしたらいいのでしょうか?
224nobodyさん:2011/06/14(火) 16:50:20.43 ID:ZF/JY4UT
appcfg.py vacuum_indexes
225nobodyさん:2011/06/16(木) 23:42:12.92 ID:???
久しぶりに見たら値上げしてたのか
「安い」はgaeのかなり重要なメリットじゃなかったのか
基本料金の900円くらいはどうでもいいが
ヒットした時にC/Pめちゃめちゃ悪かったら
移行もしにくいし死ぬじゃん
226nobodyさん:2011/06/16(木) 23:47:32.36 ID:???
>>148
秒間7リクエストくらいは1インスタンスで捌けるってことかな?
それが16で秒間112リクエスト程度
それで900ドルはあまりにもひどMAX
227nobodyさん:2011/06/17(金) 01:32:23.25 ID:???
>>226
相当な改悪ですよね?
趣味で無料枠を使って楽しんでいたのに残念。
228nobodyさん:2011/06/17(金) 02:27:36.41 ID:d7RRou9G
蔵には通知したし問題なし
229nobodyさん:2011/06/17(金) 02:38:40.85 ID:AKnbuyYJ
https://simple-note.appspot.com/

ここが全文検索を実現してるんだけど
どうやってるの?
230nobodyさん:2011/06/17(金) 02:51:28.39 ID:???
調べてないけどフロントはgaeだけどバックは別サーバーとかかなー
231nobodyさん:2011/06/17(金) 13:02:37.52 ID:???
CPU時間は分かるけどインスタンスって何?
232nobodyさん:2011/06/17(金) 23:15:37.03 ID:???
仮想サーバ一台分のことじゃね
233nobodyさん:2011/06/18(土) 17:57:01.55 ID:???
CPU時間がサーバー台数になったら処理コストどうやって計算すればいいのよ。
234nobodyさん:2011/06/18(土) 19:02:41.92 ID:???
googleさんの匙加減です
235nobodyさん:2011/06/19(日) 01:15:42.25 ID:???
上の方の外人さんの話で
秒間7リクエストしか処理できないサーバーってどんなショボサーバーなんだよ
236nobodyさん:2011/06/19(日) 08:00:28.46 ID:???
そんな糞サーバーを天下のGoogle先生が提供するわけねえよ
237nobodyさん:2011/06/25(土) 14:33:48.08 ID:???
GAEのインスタンスってプロセスみたいなもんだろ。

仮想サーバ一台分ってネタで言ってんのか?w
238nobodyさん:2011/06/25(土) 20:25:00.81 ID:CuFr1x67
http://www.google.com/events/io/2011/sessions/full-text-search.html

全文検索来てるやん
結構ビッグニュースなのになんでまだ出てないの?
239nobodyさん:2011/06/25(土) 22:49:03.86 ID:???
>>238
リリースされたらまた来てね
240nobodyさん:2011/06/26(日) 00:57:56.98 ID:???
詐欺集団
241nobodyさん:2011/06/26(日) 05:34:27.23 ID:???
インスタンスってプロセスなのか
ec2みたいな感じかと思ってた
242nobodyさん:2011/06/26(日) 23:00:58.10 ID:khL3PMIp
夕方からサーバーエラー出てるけどみなさんところは無事?
243nobodyさん:2011/06/27(月) 00:15:43.24 ID:???
もう使ってないから平気
244nobodyさん:2011/06/27(月) 04:40:00.07 ID:???
金取るのにエラーww
舐めてるの?
245nobodyさん:2011/06/27(月) 08:37:42.42 ID:???
AmazonのEC2とかでアメリカのベンチャー企業はサービス立ち上げるみたいだけど
GAEはAmazonのEC2とかに対抗できるんでしょうか?
246nobodyさん:2011/06/27(月) 10:16:11.44 ID:rp/Vk+jP
サーバーエラー自己解決しました。
アプしたソースにエラーがありました。

でも、そのソースは呼び出してないんだけどアプリ全体が落ちるっておかしいですよね?
ローカルレベルで一切チェックしなかったのも悪かったですけど
まだ書きかけのソースなんて今までもいっぱい混ざってたと思うのですが
今回はmain.pyにimportしてたせいですべて落ちることになったみたいです。
main.pyにテスト用のimportなんかしてる場合は気を付けないといけないですね。
247nobodyさん:2011/06/27(月) 11:49:24.70 ID:???
ログくらい見ろやぼけ
248nobodyさん:2011/06/27(月) 12:04:32.64 ID:rp/Vk+jP
ログにはエラーがなかったんです。
リクエストも記録なし。
コンパイルでアプリケーション自体が落ちてたから?
249nobodyさん:2011/06/27(月) 12:10:19.06 ID:???
使い方によって妙に課金額がでかくなりそうなのが嫌
250nobodyさん:2011/06/27(月) 12:39:00.88 ID:rp/Vk+jP
上限あるからそんなことはないけど、初期データのセットアップやテストデータの削除でクオータ使い切るとやるせない。
負荷テストや初期のセットアップ用に別メニューあるといいんだけどさ。
負荷テストは同じコードのアプリ3つ作っておいて分散してクオータ使うか松尾さんに相談するしかないのかな?
251nobodyさん:2011/06/27(月) 16:47:00.27 ID:rp/Vk+jP
デプロイが早くなったね
252nobodyさん:2011/06/27(月) 18:11:26.48 ID:???
ProtoRPCってなによ?
253nobodyさん:2011/06/27(月) 18:33:50.75 ID:???
サンプルコード見ればだいたい分かるだろ
Google App Engine Blog: Introducing ProtoRPC for writing App Engine Web Services in Python
http://googleappengine.blogspot.com/2011/04/introducing-protorpc-for-writing-app.html
254nobodyさん:2011/06/27(月) 18:36:25.05 ID:rp/Vk+jP
ウェブサービスを簡単に定義できるみたい

client:

class HelloRequest(messages.Message):
my_name = messages.StringField(1, required=True)

class HelloResponse(messages.Message):
hello = messages.StringField(1, required=True)

class HelloService(remote.Service):

@remote.method(HelloRequest, HelloResponse)
def hello(self, request):
return HelloResponse(hello='Hello there, %s!' % request.my_name)

If this web services was used as the URL end-point for an AJAX based form, Javascript to communicate with the service might look like this:

$.ajax({url: ‘/helloservice.hello’,
type: 'POST',
contentType: 'application/json',
data: ‘{ my_name: Bob }’,
dataType: 'json',
success: function(response) {
// The response is { hello: “Hello there, Bob!” }
alert(response.hello);
}
});

http://googleappengine.blogspot.com/2011/04/introducing-protorpc-for-writing-app.html
255nobodyさん:2011/06/27(月) 18:41:48.97 ID:rp/Vk+jP
ageっぱなしだったごめんなさい
256nobodyさん:2011/06/27(月) 21:31:40.51 ID:???
サンプルページも作ってほしいよね。
257nobodyさん:2011/07/10(日) 11:25:11.25 ID:???
modelのエンティティを取得しましたが、ORDER BYに制約があるため並べかえを行いたいです。
あるプロパティで並べ替えを行う簡単な方法は提供されていますか?
258nobodyさん:2011/07/10(日) 11:36:26.91 ID:???
fetchした後にlist.sort(key=...)とかでがんばってください
259nobodyさん:2011/07/10(日) 11:50:50.44 ID:???
ああ こういう場合はGQLを使わない方がいいのですね!
確かにその方が目的にかなってる気がします
ありがとうございました!
260nobodyさん:2011/07/10(日) 11:57:17.98 ID:???
ああ GQLQueryのfetchを使うのですね
勘違いでした
261nobodyさん:2011/07/16(土) 09:05:57.43 ID:???
Updated App Engine Pricing FAQ!
https://groups.google.com/forum/#!topic/google-appengine/Hluog1_a3n4/discussion

15 minute startup feeってのが本気で曲者だな。
262nobodyさん:2011/07/16(土) 09:09:29.22 ID:???
インスタンスを立ち上げるたびに、実際にインスタンスが立ち上がっていた時間以外に、
startup feeとして15IHが追加課金される。

インスタンスが一度落ちて、
15分以内にもう一度立ち上がった場合は、
新たにstartup feeは取られないが、落ちていた間もずっとインスタンスがあったとして課金される。

最初のアクセス後に、14分後にもう1回アクセスがあっただけで、
30IHを消費する事になるな。
従来のCPUTimeならものの数秒なのに。

で、合ってる?
263nobodyさん:2011/07/16(土) 12:22:40.30 ID:???
あってると思う。
1インスタンスで捌けるリクエストなら無料分(24時間分)が効いてくるけど、
複数インスタンスになると途端に課金額が跳ね上がるね
常時2インスタンス立ってるとしたら月約6000円
あらかじめインスタンス生成と消滅に関する設定が増えるみたいだけど、
インスタンスを作らせないコツがあったら教えてください
264nobodyさん:2011/07/16(土) 13:06:06.24 ID:???
ほす
265nobodyさん:2011/07/16(土) 17:00:29.21 ID:???
>>263
そうか。
スケールするのが魅力なのに
スケールしたら大変な事になるのか。
インスタンス生成は最高1個までしか作らせない、とかいうのは設定でできるっぽいが。
素直に他に行った方がいいのかな。

googleは本音ではapp engineを終わらせたいのか?
ユーザーを追い出す為の料金設定?
266nobodyさん:2011/07/16(土) 17:38:09.40 ID:???
素直に他に行った方がいい

>googleは本音ではapp engineを終わらせたいのか?
>ユーザーを追い出す為の料金設定?

だよね
267nobodyさん:2011/07/17(日) 05:45:25.19 ID:???
>>262
単位がちょっと間違ったな。
15IHじゃなくて、15m分のIHか。
とはいえ、IHの浪費を抑えたければalways on 状態を維持するしかなく
それだとstartup料金の15minutes分のIHが足りない。初日だけか?

一日に1000人も来ないようなサイトなら、なんとかなるかもしれない。
時間帯や曜日や日付ごとにインスタンス設定変えられる、とかならいいのに。
268nobodyさん:2011/07/17(日) 06:20:26.78 ID:???
https://groups.google.com/group/google-app-engine-japan/browse_thread/thread/ac6e42999887b61f/90cba372f038ce48?lnk=gst&q=%E6%96%99%E9%87%91#90cba372f038ce48
気になるのは、この文面。

「有料アプリケーションにして $9 お支払いいただければ、最小のアイドルインスタンスを 1
に設定することで、無料枠の 24 インスタンス時間/日 を利用してインスタンスをいつも立ち上げておくことができるようになります。 」

Freeだと、常時立ち上げによってIHの浪費を抑えるのはできないってことかな。
もうそうならFreeだと、一日に100人も捌けない可能性が出てくるけど。
269nobodyさん:2011/07/22(金) 15:05:56.95 ID:???
誰か教えてください。

aaa = u'ああああ'
return self.redirect('/page?aaa='+aaa)

という感じで画面遷移しようとすると
UnicodeDecodeErrorになります。

aaa = aaa.encode('utf_8')
とか色々なところに.encode('utf_8')をつけてみましたが
上手くいきませんでした。
どうすればクエリーストリングに日本語をいれて
UnicodeDecodeErrorにならずにリダイレクトできますか?
270nobodyさん:2011/07/22(金) 18:32:11.89 ID:???
>>269
urlencode
271nobodyさん:2011/07/24(日) 00:10:33.49 ID:???
こいつおもしろいっすね
http://gaejava.appspot.com/
272nobodyさん:2011/07/24(日) 00:38:30.04 ID:???
どこが?
273nobodyさん:2011/07/25(月) 23:33:31.06 ID:???
>>271
THX 4 UR INFO
274nobodyさん:2011/08/02(火) 22:01:50.10 ID:8f7TcR7+
うめ
275nobodyさん:2011/08/03(水) 17:33:41.40 ID:???
アップロードしたくないファイルのパターンを指定することはできますか。
たとえば .gitignore や tmp をアップロードしないようにしたいです。
276nobodyさん:2011/08/03(水) 17:56:05.36 ID:???
出来る
マニュアル読め
277nobodyさん:2011/08/03(水) 22:10:12.83 ID:???
>>276
マニュアルのどのページでしょうか。
278nobodyさん:2011/08/04(木) 11:59:49.44 ID:???
*使えばいいんじゃないのか
279nobodyさん:2011/08/04(木) 19:56:12.94 ID:???
ASSCI出版の標準Djando 
第11章テンプレートシステム244P-225Pの
サンプルコードについて質問です

-----テンプレート部分----
{% upper %}
This will appear in uppercase {{ your_name }}
{% endupper %}

-----タグ用の関数部分-----
def do_upper(parser, token):
nodelist = parser.parse(('endupper'))
parser.delete_first_token()
return UpperNode(nodelist)

class UpperNode(template.Node):
def __init__(self, nodelist):
self.nodelist = nodelist

def render(self, context):
output = self.nodelist.render(context)
return output.upper()

register.tag('upper', do_upper)

このサンプルは意図通りに動きました。しかし、
return UpperNode(nodelist)でUpperNodeクラスを呼ぶと
何故def render〜のブロックが実行されるのか理解できてません。
自動で呼ばれるのはコンストラクタの__init__メソッド
だけだと思ったのですが。
renderメソッドがどのように実行されたのか教えて貰えないでしょうか。
280nobodyさん:2011/08/04(木) 20:19:49.54 ID:???
>return UpperNode(nodelist)でUpperNodeクラスを呼ぶと

呼んでる訳じゃないから
281nobodyさん:2011/08/04(木) 20:24:59.86 ID:???
>>279
クラスの基礎を勉強しましょう
282279 :2011/08/04(木) 21:24:02.62 ID:???
>>281
どういうことかザックリとでいいので教えて貰えませんか?
283nobodyさん:2011/08/04(木) 21:33:19.76 ID:???
>>282
>>279はApp EngineやDjango固有の話ではないのでPythonスレで聞いてください
284nobodyさん:2011/08/04(木) 23:21:54.59 ID:???
馬鹿には無理
285nobodyさん:2011/08/05(金) 10:22:24.52 ID:???
なんかここにはふてくされた野郎ばっかり残ったなww

オワコンだからかw
286nobodyさん:2011/08/05(金) 12:58:36.16 ID:???
UnacceptableVersionError: django 1.2 was requested, but 0.96.4.None is already in use

宣言を一番上に書いても再起動しても出る
しかも突然ではじめた
おなじ症状の人いますか?
287nobodyさん:2011/08/05(金) 13:30:08.99 ID:???
あれ・・・突然治った

なんだろ
288nobodyさん:2011/08/05(金) 14:04:39.77 ID:???
鯖が変わったんだろ
289nobodyさん:2011/08/05(金) 20:53:33.54 ID:???
>>285
仕事取られまいと必死な奴がだいぶ前からスレに張り付いてる。
290nobodyさん:2011/08/06(土) 11:57:50.17 ID:???
>>289
なるほど。
これからもくだらない質問するのでよろしくお願いします。
291nobodyさん:2011/08/06(土) 16:26:57.72 ID:???
>>286
main.pyで違うdjangoをロードしてた orz
292nobodyさん:2011/08/10(水) 10:58:33.46 ID:???
queryクラスから取得したエンティティのプロパティにループでアクセスする方法ありますでしょうか?
293nobodyさん:2011/08/10(水) 11:19:30.93 ID:???
例えばあるモデルのエンティティを辞書型に変換するみたいなことができればいいのですが
294nobodyさん:2011/08/10(水) 12:38:07.27 ID:???
>>292
普通にfor inでok
295nobodyさん:2011/08/10(水) 13:26:26.13 ID:???
>>294
ありがとうございます。説明不足ですみません。
queryクラスからfor in でエンティティを取り出して
そのエンティティのプロパティをループで全部取り出したいんですが、
for in だとうまくいきません・
296nobodyさん:2011/08/10(水) 23:17:48.80 ID:???
obj.properties().items()でした過去ログにもありましたね。
297nobodyさん:2011/08/18(木) 02:14:44.46 ID:???
298nobodyさん:2011/08/18(木) 07:06:51.15 ID:???
gae使うか普通のサーバーでdjango使うか悩む
299nobodyさん:2011/08/18(木) 20:04:09.79 ID:???
普通の鯖がいいよ
300nobodyさん:2011/08/18(木) 20:29:52.20 ID:???
2.7来たな
301nobodyさん:2011/08/19(金) 01:09:01.44 ID:???
GAE for Pythonで2ch鯖もどきを試作して、とりあえずJaneから読み書きできたので報告
吐けないヘッダの都合でdatが壊れた扱いになるため完全な動作がしないのがわかりました

http://gaebbs-test.appspot.com/gaebbs/

反応あったらソースコード上げます
302nobodyさん:2011/08/19(金) 01:20:59.41 ID:???
Not Foundだった
303nobodyさん:2011/08/19(金) 01:29:19.65 ID:???
専ブラの外部板追加で確認してみてください
read.cgiまだ作ってないです
304nobodyさん:2011/08/19(金) 05:43:21.09 ID:???
>>301
うちもdatを吐くプログラムを作ってるけどJaneやV2Cでちゃんと読めているよ
吐けないヘッダって具体的になんだよ?差分取得を実装していないだけじゃないの?
あと、gaebbsってサービスはすでにある(2ch形式じゃないけどね)
305nobodyさん:2011/08/19(金) 06:33:31.88 ID:???
Sign up to the Python 2.7 trusted tester program - google-appengine-python | Google グループ
http://groups.google.com/group/google-appengine-python/browse_thread/thread/4bde29d8e6dc0842
306nobodyさん:2011/08/19(金) 06:54:14.85 ID:???
>>305
+1
307nobodyさん:2011/08/19(金) 07:35:16.68 ID:???
>>304
読み込めてるのは確認したんだ
差分取得もできるけどContent-Range吐けてないか吐けてもそれとContent-Lengthが一致してないっぽい
名前は適当に付けたから不問にして欲しいんだけど
308nobodyさん:2011/08/19(金) 07:43:01.32 ID:???
>>307
うちはちゃんとContent-Range吐けてるよ
書式が間違ってない?Content-Lengthは自分で好きなようにすればいいだろ
309nobodyさん:2011/08/19(金) 07:43:26.77 ID:???
あと、ちゃんと206を返しているか?
310nobodyさん:2011/08/19(金) 08:00:07.36 ID:???
>>308
Content-Length吐けんがな
ttp://code.google.com/intl/ja/appengine/docs/python/tools/webapp/responseclass.html#Disallowed_HTTP_Response_Headers
Content-Rangeの書式ミスは確認してみる
206はちゃんと返してる
311nobodyさん:2011/08/19(金) 08:25:49.77 ID:???
>>310
Content-Lengthを自前で吐けなんて誰も言ってねぇよ
312nobodyさん:2011/08/19(金) 09:03:10.61 ID:???
>>311
もう一回Content-Range書きなおしたらサイズ不一致なおりました
313nobodyさん:2011/08/19(金) 16:19:50.94 ID:???
なぜ皆>>305にスルーなのか。2.7対応ってインパクト大きいと思うのだが。
314nobodyさん:2011/08/19(金) 22:31:09.52 ID:???
GAE のためだけに自分の環境 2.7 にするのもアホくさい
315nobodyさん:2011/08/19(金) 23:31:44.85 ID:???
>>313
インパクトのある変化をリストアップしてみなよ
316nobodyさん:2011/08/20(土) 08:18:30.57 ID:???
>>315
もう2.5系を意識しなくて済む
317nobodyさん:2011/08/20(土) 09:42:49.73 ID:???
だって、GAE自体オワコンじゃん
誰が新規で開発するんだよ
318nobodyさん:2011/08/20(土) 10:21:59.92 ID:???
>>315
JSONが標準モジュールになった(2.6.くらいから)
319nobodyさん:2011/08/20(土) 17:56:44.33 ID:???
それがどうかしましたか?
320nobodyさん:2011/08/23(火) 21:52:11.48 ID:???
2chの鯖から差分取得出来るか?
321nobodyさん:2011/08/24(水) 08:06:59.95 ID:94+3Z5mS
GAEってどれぐらい自由度あるの?
JavaNIOは使える?
322nobodyさん:2011/08/24(水) 08:20:01.70 ID:???
323nobodyさん:2011/08/26(金) 22:46:02.69 ID:???
料金がさっぱりわからん
324nobodyさん:2011/08/30(火) 18:36:03.09 ID:???
>>323
わかんないよねー
月額9ドル必要らしいんだけど、どこまでが無料でどういうことしたい場合は有料なのか、わからない。
325nobodyさん:2011/09/01(木) 07:56:25.84 ID:???
326nobodyさん:2011/09/01(木) 12:10:00.19 ID:???
>>325
これはデイリー? それともマンスリーの金額?
327nobodyさん:2011/09/01(木) 13:04:48.25 ID:???
>>326
dailyだよ
328 【大吉】 :2011/09/01(木) 14:50:25.97 ID:???
凶ならオワコン
329nobodyさん:2011/09/03(土) 03:09:29.24 ID:???
今までの請求の9倍だよ
VPSの方が汎用的で安いじゃねーかw
330nobodyさん:2011/09/03(土) 09:42:39.08 ID:???
App Engine アプリケーションのリソースを管理する方法 - Kay's daddy
http://blog.shehas.net/2011/09/02/app-engine

Managing Your App's Resource Usage - Google App Engine - Google Code
http://code.google.com/intl/ja/appengine/articles/managing-resources.html
の日本語訳
331nobodyさん:2011/09/03(土) 15:06:18.02 ID:???
GAEアプリのソースコードがGAEからダウンロードできるってはじめて知ったよ
http://code.google.com/appengine/docs/python/tools/uploadinganapp.html#Downloading_Source_Code
332nobodyさん:2011/09/03(土) 16:06:34.03 ID:???
Memcacheってモデルクラスのインスタンスや自作クラスのインスタンスそのまんま保存できますか?
333nobodyさん:2011/09/03(土) 16:27:17.19 ID:???
できました
334nobodyさん:2011/09/04(日) 13:08:46.02 ID:???
できないでしょ
335nobodyさん:2011/09/04(日) 13:55:36.14 ID:???
ただのpickle化だ
336nobodyさん:2011/09/05(月) 12:21:22.76 ID:???
馬鹿には無理
337nobodyさん:2011/09/05(月) 17:18:05.97 ID:???
osqaがGoogle AppEngineに対応してくれないかなーと思いつつ、
公式側が対応する気がないようなので、とりあえず自宅の鯖に入れてみた。
338nobodyさん:2011/09/06(火) 10:45:09.00 ID:???
ところで開発環境python2.5のままではサーバー側も自動的にpython2.5が使われるんですか?
339nobodyさん:2011/09/06(火) 10:49:02.19 ID:???
>>338
現在は鯖側は2.5のみ対応
もうすぐ2.7になる
340nobodyさん:2011/09/06(火) 11:52:13.51 ID:???
>>339
あ!そうなんですか。ありがとうございます。
それでみなさん開発環境の方はどうされてますか?
2.5のままだとeclipps+pydevでwebapp.RequestHandlerやmemcache.setで未定義エラーがでるんですが
ローカルサーバーはちゃんと応答して動いてくれますし、本番もちゃんと動いてます。
ただ、開発環境でエラーが見えてるとホンモノのエラーを見落としそうで不安なので2.7にアップデートしよう
と思ってたところでした。
みなさんはどうされてますか?
341nobodyさん:2011/09/06(火) 17:16:53.69 ID:???
ssn_db = SessionDb.all()
ssn_db.filter('sid =', self.sid_value)
ssn = ssn_db.fetch(1)[0]
#Memcache
if ssn:
memcache.set(self.sid_value, ssn)

これでエラーも出ず通ってますよ?
なんか間違えてます?
342nobodyさん:2011/09/07(水) 08:19:36.54 ID:???
>>340
Windowsだと2.6や2.7で原因不明のエラーが多発する。
Windows使ってるなら2.5がおすすめ。
MacやLinuxなら2.7でもほとんど問題ないらしいけど。
343nobodyさん:2011/09/07(水) 16:48:05.14 ID:???
>>342
了解です
ありがとうございました
344nobodyさん:2011/09/07(水) 20:04:13.85 ID:???
QuotaのHigh Replication Dataがすごい減った
計り方変えたのか?
345nobodyさん:2011/09/08(木) 05:43:26.59 ID:???
同感。App Engine 選んだら心中するしかない。
ttp://text.ssig33.com/70
> この件で考えたことがある。 App Engine の危険性についてだ。
>
> App Engine は優れたアプリケーションプラットフォームだ。それは間違いない。しかし、 App Engine を捨てたいという場合、困難だ。金くれの場合はアプリケーションが小規模なので問題は少なかった。
>
> しかしアプリケーションが大規模だったらどうだろう。 App Engine でしか使えないデータのダンプ、 App Engine に最適化された奇妙なコード。こんな糞の山を前にして途方に暮れるしかないだろう。
>
> heroku ならばそういう問題は少ない。 heroku にデプロイされるのは普通の rack アプリケーションだ。常識的な作りをしている。 PostgreSQL が吐く普通のダンプも手に入る。 heroku に問題が発生して、移行する必要がある時は速やかに作業を進めることが出来るだろう。
>
> まとめてしまうと、簡単な話だ。標準的でない技術は使用を控えるべきだ。 App Engine は標準的でない技術を必要とする。故に使用すべきではない。 heroku は標準的な技術を使用することが出来る。なので使用に問題は少ない。
346nobodyさん:2011/09/09(金) 02:00:55.32 ID:???
> Google に ロック インされてまでApp Engine を使って、 スケール アウトを求める のは、どうなんだろうという トラックバッ ク あったけど、思考 パターン が ソーシャ ル 系 ビジネス には向いてないと思い ます。
> だって、 一年 経って目が出ない サービス はや めちゃうだろうし、運よく成功したら、売っ てもいいし、さらに続けてより高く売ること を目指してもいい。短い スパン の ビジネ ス だ から、 ロック インされている デメリッ ト って余り無いもの。
347nobodyさん:2011/09/09(金) 02:20:56.00 ID:???
348nobodyさん:2011/09/10(土) 07:50:33.12 ID:???
新課金体系への移行について
https://groups.google.com/group/google-app-engine-japan/msg/1c2639cee29a3986?hl=ja
* 新しい課金体系を適用しはじめる日時を、11/1 に延期しました
* Frontend Instance の半額期間を 12/1 まで延期しました
* Python 2.7 のリリースは 12/1 をターゲットにしています
349nobodyさん:2011/09/10(土) 08:32:35.94 ID:???
App Engine 担当エンジニアリングディレクター Peter Magnusson からデベロッパーの皆さんへのメッセージ - Kay's daddy
http://blog.shehas.net/2011/09/09/peter-magnusson
350nobodyさん:2011/09/10(土) 14:53:24.32 ID:/esPz0kz
>349
一度離れた気持ちは簡単に元には戻らないよね。
私はGAEを見限りました。
351nobodyさん:2011/09/10(土) 19:25:16.28 ID:???
>>349
リソース少ないけど今みたく無料で使うコースもあるんだね。全部有料になると思ってた。
まあそれよりPython2.7対応が1番うれしい
352nobodyさん:2011/09/10(土) 19:55:04.06 ID:???
スレッド使うようになってもまだうちの規模じゃメリット出ないかな

社内システムなんで気楽
353nobodyさん:2011/09/10(土) 20:03:07.07 ID:???
松尾さんからメール来た

チューニングについて料金について個別対応するって書いてある
ここまでやってくれるのはすごいと思った
354nobodyさん:2011/09/10(土) 20:10:09.89 ID:???
あ、直接メール来たわけじゃないです グループのやつです
355nobodyさん:2011/09/11(日) 11:47:48.31 ID:???
2年前ならいざしらず、今はGAE以外にも選択肢がたくさんあるからねえ。
使いにくいDataStoreで一生懸命頑張って結局ロックインの問題が発生するより、
ふつうにPythonとMySQL使えるプラットフォーム選ぶわ。
356nobodyさん:2011/09/11(日) 12:26:44.67 ID:???
ところでここってDOS攻撃受けたらどうなんのかな?
クォータ使い尽くしてエラーでちゃう?
357nobodyさん:2011/09/11(日) 12:27:02.78 ID:???
値段が高くて制限があるプラットフォームを選ぶ馬鹿はいないよな
358nobodyさん:2011/09/11(日) 12:27:53.68 ID:???
>>356
証拠を提出できれば、課金しないでくれるらしいよ
359nobodyさん:2011/09/11(日) 13:33:10.10 ID:???
証拠つってもログしかないよね
ログなら向こうが持ってるだろうに

おれはサーバの管理なんか絶対やりたくないから
単独で仕事するにはこれしか選択肢ないな
360nobodyさん:2011/09/11(日) 16:23:28.07 ID:???
>>356
yes
361nobodyさん:2011/09/11(日) 16:25:47.28 ID:???
GAEなら管理しなくて良いということにはならないよな
362nobodyさん:2011/09/11(日) 18:29:39.62 ID:gfTkz+PF
サーバーの管理業務のうち、クラウドで代替できるものは何があるか、AppEngine以外のクラウドで実現できないものは何かを洗いだしてみるのはそれなりに意味があるかもな。

物理故障対応→これを対応してくれないのはクラウドとは呼ばない
ミドルウェアのパッチ適用など→herokuみたいなタイプのクラウドならやってくれてるのかな。EC2とかは対応してないよね?
ログローテート→これもGAE以外は自前?そもそもherokuは過去のログが見れないぽい(衝撃)。
バックアップ→どこのクラウドでも業務品質でやろうとしたら自分でやらないといけない。
アプリケーションサーバーのオートスケーリング→デフォルトで提供してるのはGAEぐらい?
データストアのオートスケーリング→デフォルトで提供してるのはGAEぐらい?

いろいろ書き出してみたが、そもそも SaaS, PaaS, IaaS の区別つけないと書いても仕方ない気がしてきた。
363nobodyさん:2011/09/11(日) 19:40:01.71 ID:???
gaeのjavaの方のスレが落ちてて携帯からだと立てられないから、
誰かpart4たてるかお願いできますか?
それか、gaeもGO対応になったし言語別に分けるより、
スレひとつにまとめてしまった方がいいのかもしれないです
364nobodyさん:2011/09/11(日) 21:37:21.19 ID:???
常識的に考えてGOスレが伸びるとは思えない
365nobodyさん:2011/09/12(月) 06:34:59.20 ID:???
ここでいいんじゃね
366nobodyさん:2011/09/12(月) 07:36:35.77 ID:???
だな、Javaのコジキ系男子も今回の値上げで大分減ったろうし、まとめたらいいと思う。
367nobodyさん:2011/09/12(月) 09:52:05.26 ID:???
JavaもGoもPythonよりは大規模アクセスをさばけそうではあるが、
所詮はCPU負荷が違うだけだしな。

CPU使いまくってレスポンスに時間がかかるような
サービスでなければPythonで十分だ。
368nobodyさん:2011/09/12(月) 21:43:01.04 ID:???
有料になった今、CPU消費は重要じゃね?
369nobodyさん:2011/09/13(火) 01:20:09.43 ID:???
>>359
phpで作ってレンサバに放り込んでおけば、ほとんど何もしなくていいじゃん
370nobodyさん:2011/09/13(火) 10:31:15.35 ID:???
俺もPHPが一番管理が楽な気がしてきた

けど、あれ書いてられんわw
371nobodyさん:2011/09/13(火) 19:03:51.78 ID:???
perlをさらに汚くした感じだお
372nobodyさん:2011/09/13(火) 21:34:33.98 ID:???
IIJ MOGOK とかどうよ?
RubyのPaaSだけど。
本サービス開始後も、開発程度のリソース消費なら無料で使わせてくれると
この前のRubyWorld Conferenceで言ってたよ。
373nobodyさん:2011/09/13(火) 21:47:32.81 ID:???
小規模なら無料なPaaSもっと増えるかな
PaaSは無料プランでもレンタルサーバの無料プランとは違ってツイッターボットのような「ページ」を持たない外部呼出しも許す的な雰囲気だけど
静的な画像ファイルやJSファイル等の外部呼出しに使ったら怒られるかな・・・
374nobodyさん:2011/09/14(水) 01:34:51.84 ID:???
怒られなくない?
375nobodyさん:2011/09/14(水) 23:30:01.90 ID:???
11月にサービスが始まるさくらクラウドに期待している
376nobodyさん:2011/09/15(木) 00:59:30.50 ID:???
上に同じ
377nobodyさん:2011/09/15(木) 01:58:51.47 ID:???
11月まで暇なんだ

うらやましいなあ
378nobodyさん:2011/09/15(木) 04:55:17.05 ID:???
Django、一応GAEに対応してはいるけど、
既存のmodelがORMを通してRDBに依存しているので
その部分が移植できないと考えていいのかな?

結局ほとんど作り直しになると。
379nobodyさん:2011/09/15(木) 07:32:08.63 ID:???
AmazonがAWSやり続ける限りGoogleも競ってGAEを続けるとして
この2社の技術競争に対抗できる会社があるのかよ
380nobodyさん:2011/09/15(木) 07:50:49.42 ID:???
MS、Apple
381nobodyさん:2011/09/15(木) 08:15:16.69 ID:???
>>379
なにをもって「対抗できる」と言ってるのか説明してもらわないとコメントしづらいけど、
個人的には
・AWSは無料で始められないからパス
・GAEは技術が独自すぎるうえに価格競争力がなくなったのでパス

今はふつうのDBが使えてかつ無料で始められるクラウドサービスがいくつか出てきてるので
それらを使ってみるつもり。
fluxflexとかよさげ。
ttp://www.google.co.jp/search?ie=UTF-8&q=fluxflex
382nobodyさん:2011/09/15(木) 11:00:10.60 ID:???
Salesforce

Appleのクラウドは伝統的に糞以下
383nobodyさん:2011/09/15(木) 11:28:16.36 ID:???
>>378
yes
看板に偽りあり
384nobodyさん:2011/09/15(木) 20:18:37.40 ID:???
GAE for Javaのスレまだないっぽいのでここで質問させていただきます

ImagesServiceの applyTransformメソッドでつくったサムネイル画像を
<img >タグで呼び出して表示させようとしているのですが
ローカルの開発環境下(http://localhost:8888)で
なぜかGoogle Chromeで表示ができないのです
Firefoxではできているのですが・・・・

画像ファイルを直接指定すると正常に表示できるのですが

解決方法をご存知の方いらっしゃいませんか?
385nobodyさん:2011/09/15(木) 20:28:49.88 ID:???
>>384
Chromeのデベロッパーツールで確認してね
386nobodyさん:2011/09/16(金) 15:23:52.38 ID:???
>>381
fluxflexとか怪しすぎて使う気になれん
387nobodyさん:2011/09/16(金) 15:58:11.20 ID:???
個人の趣味ならなんでもいいんじゃない?
388nobodyさん:2011/09/16(金) 17:21:17.17 ID:???
テンプレートエンジンのGenshiって動かしたことある方います?
大昔に試したときは動いたんだけど、今は出来ないとか・・・。いや自分で試せってのはごもっともなんで、後で試すつもりですが、良かったら教えて。
389nobodyさん:2011/09/16(金) 20:50:23.86 ID:???
放射能つっても所詮電磁波だろ
390nobodyさん:2011/09/16(金) 20:51:04.72 ID:???
ゴバーク
391nobodyさん:2011/09/16(金) 22:19:41.19 ID:???
>>389
γ線だけ
392nobodyさん:2011/09/18(日) 21:08:06.19 ID:???
Google App Engine SDK 1.5.4 Release

http://d.hatena.ne.jp/naskin+hack/20110917/1316227111
393nobodyさん:2011/09/18(日) 21:15:29.48 ID:???
Djangoに見切りをつけて、
Flaskの勉強を始めることにした。
394nobodyさん:2011/09/18(日) 22:21:26.42 ID:???
web2pyもよろしく。
395nobodyさん:2011/09/18(日) 23:40:50.98 ID:???
BigTableの取扱方がよくわからないのですが、
1から学んでいくのにいいページはありませんでしょうか。

本家のマニュアルだと記述が断片的で、
書かれた記述をどう配置したらいいのかがわかりません。
396nobodyさん:2011/09/19(月) 00:22:19.10 ID:???
たしかGAE関連の本で、Bigtableについての本があったはず
立ち読みしたけど、データの構造や設計思想的なのを含め詳しく載ってました
「オープンソース徹底活用 Slim3 on Google App Engine for Java」
397nobodyさん:2011/09/19(月) 00:26:06.04 ID:???
もしかして→Datastore
398nobodyさん:2011/09/19(月) 16:45:41.49 ID:???
class a(db.Model):
str = db.StringProperty()
def setb():
 b=b()
b.refa=self.key()
 b.put()

class b(db.Model)
ref_a = db.ReferenceProperty(reference_class = a)

のとき
a1=a()
a.str=u"あいうえお"
a.put()
a.setb
と呼び出すと
 b=b()
のところでBadValueErrorが出ます
このクラスを別々のファイルに保存すると互いに相手をインポートしなければいけないので
同じファイルに入れて見ましたが、やはり循環参照的なことでよろしくないのでしょうか?
このような場合うまい解決方法はないでしょうか?
399nobodyさん:2011/09/19(月) 16:54:07.42 ID:???
インデント崩れてるしコードも違います・・・

 b.ref_a=self.key()

a1.str=u"あいうえお"
a1.put()
a1.setb

両方のクラスを操作するクラス作ってその中で全部やるのが常道ですかね?
400nobodyさん:2011/09/19(月) 16:54:28.82 ID:???
>>398
質問する際には、
せめて最小限の命名規則くらいは守ってくれ。
それからPythonはインデントが正確でないと
正しいプログラムでなくなってしまうので、
pastebinなどのサービスを使ってほしい。
401nobodyさん:2011/09/19(月) 17:05:25.09 ID:???
>str = db.StringProperty()

だめだこりゃw
402nobodyさん:2011/09/19(月) 17:36:20.52 ID:???
ありがとうございました。
両方のクラスを操作するクラスを作ります。
403nobodyさん:2011/09/20(火) 00:00:17.08 ID:???
2chにはコード貼りにくいな、Pythonの言語使用上。
404nobodyさん:2011/09/20(火) 00:05:23.96 ID:???
>>402
str は built-in オブジェクトだよ。
str = u"あいうえお" とか混乱するからやめておくれ。
405nobodyさん:2011/09/20(火) 00:07:56.64 ID:???
>>404
親切にありがとうございました
406nobodyさん:2011/09/20(火) 21:04:06.27 ID:???
予約語の色が変わるエディタを使うべきですな
407nobodyさん:2011/09/20(火) 22:19:36.97 ID:???
>>395
>本家のマニュアルだと記述が断片的で、
>書かれた記述をどう配置したらいいのかがわかりません。

ナカマハッケン!Googleの資料も、Webで見つかる資料も分かりにくかったけど、
オライリーからGoole App Engine の本が出ているから、それを頑張って読んだら
わかるようになった。たいへんだったけど。

408nobodyさん:2011/09/20(火) 22:55:49.41 ID:???
馬鹿には無理
409nobodyさん:2011/09/21(水) 00:55:05.30 ID:???
無料枠が24→28時間に拡大されたね。
410nobodyさん:2011/09/21(水) 01:48:16.90 ID:???
GAEってCPU時間はかなり余裕そうなんだけど、
転送量が1日読み・書き1GBでこっちの制限がきついよね。

ファイルアップロードを伴うサービスは断念だわ。
テキストサービスが主体かなあ。
411nobodyさん:2011/09/21(水) 02:36:59.33 ID:???
>>410
datastoreじゃなくてmemcachedに保存することで、制限を緩和できるかと思ったけど、
せめてmemcachedに保存した時の生存期間が予測可能でないと無理だった。
412nobodyさん:2011/09/21(水) 03:57:06.34 ID:???
datastoreへのアクセス量じゃなくて
転送量だろ?
413nobodyさん:2011/09/22(木) 22:20:08.69 ID:???
アップロード転送量が1Gで、DBが500Mbyteだから
すぐDBの方がパンクするよ
414nobodyさん:2011/09/22(木) 23:21:44.14 ID:IKJOC3BE
おまえら、まだ使ってるの?
GAEにサヨナラしないの?

一度裏切られた信用は、簡単には元には戻らないと思います。
今回の一件でGAEにロックインすることのリスクを痛感したので
AWSやその他クラウドサービスに移行しますね。

みなさん、さようならー♪
415nobodyさん:2011/09/22(木) 23:52:30.69 ID:???
納品前の人は気楽でいいね
416nobodyさん:2011/09/23(金) 00:08:55.53 ID:???
納品するような大事なものにGAE使ったんですか!?
417nobodyさん:2011/09/23(金) 03:04:22.21 ID:???
納品したけど結局他所に引っ越したよ
418nobodyさん:2011/09/23(金) 09:43:10.67 ID:???
お気の毒 こっちは着々と機能追加中
419nobodyさん:2011/09/23(金) 11:22:42.08 ID:???
python image libraryのフルセット搭載して欲しいな
420nobodyさん:2011/09/23(金) 11:28:50.53 ID:???
421nobodyさん:2011/09/23(金) 20:24:05.27 ID:???
日本語ドキュメントもうちょっと更新がんばって欲しいよね。
422nobodyさん:2011/09/23(金) 22:56:48.76 ID:???
失礼します。最近使い始めた初心者です。
python+djangoで簡単なデータ登録をするようなページを作っています。
データをサーバにPOSTしてDBに登録する際にページを更新しないような仕様にしたいのですが、可能でしょうか?
postメソッド内でresponse.out()を呼ばなくてもページが更新されてしまい(真っ白なページになります)困っています。
423nobodyさん:2011/09/24(土) 01:11:04.12 ID:???
>>422
無理です。Ajaxの出番です。
424nobodyさん:2011/09/24(土) 01:54:56.55 ID:???
>>423
204 No Content
返したらいいんじゃないの?
425422:2011/09/24(土) 07:19:14.76 ID:???
>>423
jQueryのloadをためしてみたのですが、やたらページが重くなってしまい断念しました。。ajax使うとしたら具体的に何を使うべきだと思いますか?

>>424
response.set_status(204)でページ更新をキャンセルことができました!
426nobodyさん:2011/09/24(土) 10:13:14.12 ID:???
>>420
サンクス。レジストしてみたが即連絡無いので審査待ちだろうか。
なお、英文は書けない
427nobodyさん:2011/09/24(土) 13:08:29.31 ID:???
py2.7 になったら socket さわれるようにしてくれ。
428nobodyさん:2011/09/24(土) 15:20:08.41 ID:???
28時間になるってことは、無料でも1インスタンスだけで運営するなら
十分にいけるってことか。
そんなことより課金しやすい体系にすればいいのに。
無料サイト増やしてどうするんだ。
429nobodyさん:2011/09/24(土) 15:53:54.01 ID:???
思い付きでポコポコサイト作って儲かるやつは残して儲からないやつは潰してって
気楽にできる点はいいな

いや他も気楽かもしれないけど
アメリカに置いたホスティングサーバ今月解約した
430nobodyさん:2011/09/24(土) 22:06:34.35 ID:???
>428
個人的には、無料を追い出せよと思う
課金組は安くしてくれ
431nobodyさん:2011/09/24(土) 22:25:15.74 ID:???
>>430
最初から課金前提でやるんなら他のサービスのほうがいいんでない?
>>429 みたいな使い方ができるのが強みだと思う
432nobodyさん:2011/09/26(月) 21:07:53.88 ID:???
アプリケーションをいくつも登録できる点は
前と同じなのかね?
思い付きでポコポコサイト作ってもいいのかな?
433nobodyさん:2011/09/26(月) 22:27:12.27 ID:???
10個まででは
434nobodyさん:2011/10/04(火) 02:18:38.54 ID:???
月1000円でvpsでも借りた方がまし
435nobodyさん:2011/10/05(水) 04:31:13.90 ID:???
もうすっかり下火だねえ。
436nobodyさん:2011/10/05(水) 09:37:23.56 ID:???
今月開始の和製ソーシャルサービスがGAEだね。Pythonかは分からんけど。
437nobodyさん:2011/10/05(水) 10:27:53.86 ID:???
SNSをGAEで組むのか……
サイト管理者としてはDBも1つだし、トラフィックに応じて自動でスケールアウトするから作るの楽だろうけど、
利用者当たりのページ遷移が多いからGAEで課金死する感じがあるんだが、どうなんだろうね
438nobodyさん:2011/10/05(水) 11:26:37.58 ID:???
ReadQueryが多いSNSは厳しそうだな
機能追加も課金がネックになりそう
439nobodyさん:2011/10/05(水) 16:48:36.48 ID:???
課金で苦しむほどの参加者が集まれば嬉しい悲鳴だろうな
440nobodyさん:2011/10/06(木) 03:42:25.04 ID:???
収入より課金の方が多くなったりして
441nobodyさん:2011/10/06(木) 17:45:16.84 ID:???
そうなると思うよ
SNSなんて広告収入オンリーでしょ

最初は安く済む(1日1万PV以下)
⇒課金が月$9〜$100の間、収入はゼロ

人が中途半端に増えると辛くなる(1日100万PVくらい)
⇒課金が月$1000超えて、収入が1万くらい?
⇒多分この期間が2,3年続く

大幅にあつまってやっとペイする
⇒課金が$5000超えて、収入が月100万円?
⇒このくらいのサービスまでいきつかないと思う
442nobodyさん:2011/10/06(木) 17:46:59.16 ID:???
なんか、広告収入が増えるに従って課金が増えるから
儲かってたのはGoogleだけって話になりそうだw
443nobodyさん:2011/10/07(金) 13:25:11.45 ID:???
以前はとにかくすげー安いって感じだったのに
今や一番高いのかw
444nobodyさん:2011/10/07(金) 16:52:02.54 ID:???
以前は圧倒的な低価格を実現してたから、独自仕様でベンダロックインしてもいいかと思ってた。
今は価格メリットがなくなったし、自由度の少ない独自仕様というデメリットが浮き彫りになった。
ありがとうGAE、夢をありがとう。
445nobodyさん:2011/10/07(金) 20:19:59.53 ID:???
ひがやすおさんはどうするんだろうね。
446nobodyさん:2011/10/08(土) 10:52:35.16 ID:???
目のでないサービスに引き返せないほどリソース投下したのは失敗だったろうね。
値上げ前は「風が来ている」とか言ってたのにな。
447nobodyさん:2011/10/08(土) 14:00:40.84 ID:???
値上げアナウンスから半年たっているわけだし
もう対策済みなんじゃないの?
448nobodyさん:2011/10/09(日) 17:52:38.65 ID:???
ひが先生は漫画書くらしいじゃないか。
SlimなAppEngine漫画を書いてくれるのかな?
449nobodyさん:2011/10/10(月) 14:08:49.34 ID:???
>>436
なんてサービス名?
450nobodyさん:2011/10/12(水) 22:31:02.32 ID:L41N+Gd+
Javaのスレがしばらく見ないうちに落ちてる><
451nobodyさん:2011/10/12(水) 22:42:25.09 ID:???
452nobodyさん:2011/10/14(金) 12:07:32.55 ID:???
訃報: C 言語の開発者、デニス・リッチー氏が死去
ttp://developers.slashdot.jp/story/11/10/13/0224245/

Google+ で Rob Pike 氏が語ったところによると、C 言語の開発者、K&R の R であるところの Dennis Ritchie 博士が亡くなられた。
70 歳 (Rob Pike 氏による Google+ への投稿) 。

長らく闘病中だったとのことで、先週末に自宅で息を引き取ったそうだ。
453nobodyさん:2011/10/14(金) 20:55:08.95 ID:???
Python 2.7 なオープンベータになってるのに盛り上がらないな。
socket 使えるようにならんかなー。
454nobodyさん:2011/10/15(土) 09:38:29.07 ID:???
ベータ申し込みしたはずなのに連絡来ないわー
455nobodyさん:2011/10/15(土) 12:28:14.91 ID:???
次スレはPython限定は外さない?
456nobodyさん:2011/10/15(土) 13:00:42.50 ID:???
>>455
>>950辺りでまた来てね
457nobodyさん:2011/10/15(土) 21:07:19.54 ID:???
Googleに当たり障りのあることはブログとかでは書き辛いけど
ここでは思いっきり本音で言わせてもらう
今回の値上げの件でGoogleには心の底から失望した
俺はまだそんなに深く足を突っ込んでなかったから助かったけど
Googleを信じて独自仕様についてきた信者を騙まし討ちで値上げとか
マジないわ
458nobodyさん:2011/10/15(土) 21:39:28.73 ID:???
別に書きづらい事でもねえよ
お前いつも人の揚げ足ばっかり取るようなことしてるから気になってるだけ
459nobodyさん:2011/10/15(土) 22:59:55.00 ID:???
半年かけてプランの変更を行なっているのに何を言っているんだか。
460nobodyさん:2011/10/16(日) 09:51:47.47 ID:???
おいおいここで反対の声をあげて値上げを中止にさせた方が
みんなにとって喜ばしいことなのは自明の理じゃないか
揚げ足を取ってるのはどっちだい?
461nobodyさん:2011/10/16(日) 09:56:38.05 ID:???
12 月から正式に2.7対応になるんだよね?
462nobodyさん:2011/10/17(月) 01:43:40.81 ID:???
値上げした方がGoogleにとって喜ばしいんだろ
利用者が減ったとしても
463nobodyさん:2011/10/17(月) 13:08:17.15 ID:???
>>460
そんな暇あったらGAEに見切り付けた方がまし

漏れも深く足を突っ込む前に独自仕様の危なさに気付いて脱出して正解だったと思う
だれだよ目一杯宣伝して勧誘した馬鹿は
責任取れ
464nobodyさん:2011/10/17(月) 20:53:13.05 ID:???
初心者です
GAE/pyでGoogle map apiってどうやって使ったらいいんでしょうか。分かりやすいサイトなどあれば紹介してください
465nobodyさん:2011/10/17(月) 22:17:30.89 ID:???
それGAE関係ないだろ
466nobodyさん:2011/10/17(月) 22:58:46.78 ID:???
>>465
え、
467nobodyさん:2011/10/17(月) 23:05:07.42 ID:???
え、じゃねえよ。関係ねぇよ。
なに意外そうな反応してんだボケ。
468nobodyさん:2011/10/18(火) 00:16:09.93 ID:???
GAEで〇〇Web APIにアクセスしたいっていうのはGAEについての質問じゃあないよね
469nobodyさん:2011/10/18(火) 11:45:50.73 ID:???
470nobodyさん:2011/10/21(金) 07:56:16.14 ID:???
今マスタースレーブ型アプリ使ってる人がPython2.7使いたい場合は新規にアプリ作り直すしかないんですよね?
その場合アプリID変わっちゃうからURLも変わりますよね?
471nobodyさん:2011/10/21(金) 08:04:01.73 ID:???
>>470
Aliasがある。申請の仕方は知らん
472nobodyさん:2011/10/22(土) 07:19:05.09 ID:???
>>470
え、まじで?
app.yamlにPythonのバージョン情報追加したら2.7になるとかそういうんじゃないの?
新規アプリじゃないとだめとかなにそれまじなの?なんとかしてよGoogleさん
473nobodyさん:2011/10/23(日) 22:46:01.42 ID:???
Python2.7試してみようと思ってHRDの新規アプリ作って
これ↓の通りにコード書いて最新SDK1.5.5でデプロイしたら500 Server Errorになったんですが、
http://code.google.com/intl/en/appengine/docs/python/gettingstartedpython27/helloworld.html

もしかして2.7ってまだ招待制かなんかで許可されたアカウントしか実行できないんでしょうか?
474473:2011/10/23(日) 23:02:00.61 ID:???
すんません。無事HelloWorldできました。
475nobodyさん:2011/10/24(月) 01:27:55.13 ID:???
新規appIDでやるか、現状のを2.7にガシガシ書き換えるか

スレッドは別に現状のキューでいいんだけどなぁ
476457=460:2011/10/29(土) 09:47:09.80 ID:???
ちなみにJavaの方のスレで
「Googleのサービスっていっぱい開発中止になってるから
 GAEも開発中止の憂き目に会うんじゃないか心配」
って発言したのは俺。

GAEは課金もあるから開発中止にはならないよとかレスがついたけど、
開発中止にこそならなかったかも知れないが、
こういう形で事実上使い物にならなくなるとはね。

まあレスくれた人は悪意はなかったかも知れないからそんなに責める気はないけど
Googleにはホント時間返せと言いたい。
477nobodyさん:2011/10/29(土) 10:11:30.49 ID:???
俺も「タダほど高いものはない」と身にしみたので、
Azureに移行したよ。
まだ本格開発前だったので工数は少なかったが、
リリース済みのサービスは悲惨だろうな。
478nobodyさん:2011/10/30(日) 12:50:56.52 ID:???
WP7と同じ運命を辿るようだ
479nobodyさん:2011/11/05(土) 17:49:31.60 ID:???
ちょこちょこ日本語ドキュメントも更新されてるね
480nobodyさん:2011/11/07(月) 20:27:15.30 ID:???
GAEがオワコン化して、さくらクラウドを検討してる俺は、
安物買いの銭失いと言う学習ができてないのだろうか。
481nobodyさん:2011/11/07(月) 22:47:49.93 ID:???
python2.7あたりの
日本語ドキュメント補充も早くしてほしいところだな
課金に関わる大きな機能があるとこだし
482nobodyさん:2011/11/07(月) 22:58:05.08 ID:???
>480
GAEのワケワカラン情報、バッドノウハウに浸かるより
一定額払ってなんでもOKの方が良いと思う
483nobodyさん:2011/11/08(火) 01:55:18.81 ID:???
青天井の心配もしなくて済むしな
VPSで充分安いわ
484nobodyさん:2011/11/08(火) 08:10:10.83 ID:???
1.6.0でPython2.7対応キタ━━━━(゚∀゚)━━━━!!
485nobodyさん:2011/11/08(火) 08:20:47.32 ID:???
いつの間にQuery Planning 機能なんて付いてたんだ。。
これ使うと検索早くなるの??
486nobodyさん:2011/11/08(火) 18:11:30.37 ID:???
>>480
ロックインされなきゃ
どこだっていいでしょ
487nobodyさん:2011/11/09(水) 23:10:41.96 ID:???
>>480
まぁ何にせよ
リピーターが来てくれるような魅力的なアイディアが思い浮かぶなら
ペイするかな?おれはさっぱりだがw
488nobodyさん:2011/11/10(木) 06:37:05.33 ID:???
Metadataでかすぎ
プロパティ名を短かくした方がいいらしいけど
分かりにくい名前は使いにくい

本格的なフレームワークじゃなくて
プロパティ名のショートカットを作るいい方法ない?
489nobodyさん:2011/11/12(土) 01:28:52.12 ID:???
datastoreが七面倒くせーから、もうVPSにするわ。
不自由過ぎてやってられんよ。
490nobodyさん:2011/11/12(土) 15:12:41.22 ID:???
鯖側の面倒見なくてもいいGAEは
オレにとっちゃ神ツール
491nobodyさん:2011/11/12(土) 17:43:52.06 ID:???
>>490
それってクラウド全般にいえるんじゃない?
492nobodyさん:2011/11/12(土) 19:21:15.30 ID:???
>>490
VPSと比べると思ったよりメンテが多過ぎてだめだわ
493nobodyさん:2011/11/18(金) 19:02:32.66 ID:???
Geolocation API使ってるんですが、現在位置を取得するごとにdatastoreに緯度経度を書き込みたいのですが、やりかたがわかりません。Script内からdatastoreにパラメータをどのように渡すのでしょうか?
よろしくお願いします
494nobodyさん:2011/11/19(土) 11:17:27.76 ID:???
AjaxでPOSTすればいいと思います
495nobodyさん:2011/11/19(土) 12:04:32.88 ID:???
改訂前0.26ドル 予想0.36ドル 結果2.1ドル

一瞬びっくりした

最低料金以内ってことね
496nobodyさん:2011/11/19(土) 12:06:51.68 ID:???
あれ? おなじアカウントで3つサイト公開してるけどこの料金でいいの?

安くない?
497nobodyさん:2011/11/19(土) 13:54:38.08 ID:???
課金内訳はインスタンス代が大半で、月額換算すると決して安くはないが、実はそこまで高くないってのが本音。
維持管理が面倒な人に最適だわな。
ここ一ヶ月は割と安定してて、障害やメンテの多いVPSよりは稼働率は高いかも。
498nobodyさん:2011/11/19(土) 17:36:24.01 ID:???
インスタンス代ってなんだよ
499nobodyさん:2011/11/19(土) 22:00:42.32 ID:???
gaeの他に他に目ぼしいpaasって無いんだよな。
国内でherokuやazureとか使ってサービス立ててる話は全然聞かないわ。
もしかしてpaas自体オワコンなのかねぇ
500nobodyさん:2011/11/19(土) 23:50:44.79 ID:SoBJLCFQ
Python27でFlaskを使っています。
Werkzeugデバッガーを利用したいのですが、うまく動いてくれません。ブラウザから見ると、エラー時は画面が真っ白で何も表示されていないです。
どなたかうまく動かす方法を教えてください…!
501nobodyさん:2011/11/20(日) 11:56:14.48 ID:???
>>494
すみません、やってみたのですがいまいち理解しておらず上手くいきません。
具体的に教えてくださらないでしょうか?
502nobodyさん:2011/11/20(日) 12:18:16.24 ID:???
>>501
どうやったのか具体的に書け
503nobodyさん:2011/11/20(日) 12:21:57.53 ID:???
>>502
Ajaxに今まで触れたことがなかったので、参考になりそうなサイト調べながらやったので具体的にと言われてもあまり上手く説明できません。すみません
参考になりそうなサイトなどありますでしょうか?
504nobodyさん:2011/11/20(日) 12:23:19.43 ID:???
>>503
+ JavaScript の質問用スレッド vol.93 +
http://hibari.2ch.net/test/read.cgi/hp/1321414111/
505nobodyさん:2011/11/20(日) 12:37:42.44 ID:???
>>504
JavaScriptに関する質問になりますよね、すみません。ありがとうございます!
506nobodyさん:2011/11/20(日) 13:23:31.08 ID:???
2.7への移行やってるが、けっこう引っかかるな。gqlなんちゃらとか使ってないはずなの
にHRD使えエラーで引っかかる

「移行の注意書き」どおりにデュプリケートとかするのも結構めんどくさそうなので、ソー
ス流用しながら新規で作ったほうが楽かもしれない
507nobodyさん:2011/11/20(日) 13:42:06.23 ID:???
2.7はローカル環境で動かないってのが面倒だね
508nobodyさん:2011/11/20(日) 15:27:22.42 ID:W6dgjo1L
>>507
動いてるけど
509nobodyさん:2011/11/20(日) 17:27:58.63 ID:???
>>499
AppEngine、オートスケールはやっぱり魅力だよな〜。
ロックインの問題はあるにせよ。

http://code.google.com/p/appscale/
いちおうこんなのもあるにはあるけど。。誰か試した人いる?
510nobodyさん:2011/11/20(日) 17:53:25.73 ID:???
2.7でもローカルで動くようになったのか?
試してみっか
511nobodyさん:2011/11/20(日) 22:21:55.60 ID:???
logging.info(text.uncode('utf-8'))

って感じでターミナルにログ出力するとunicodeエラーになる
self.response.out.write(text.uncode('utf-8'))
でプラウザに出力すると問題ない。
SDK(1.6)のバグでしょうか?MacLionです。
512nobodyさん:2011/11/20(日) 22:30:39.41 ID:???
なんか2.1ドルの請求来てるんだが何これ
513nobodyさん:2011/11/20(日) 22:40:33.78 ID:???
>>511
エラー全部貼れよ
うんこーどなのかencodeなのかdecodeなのかはっきりしろ
514nobodyさん:2011/11/20(日) 23:23:39.34 ID:???
DSの中身
http://uproda.2ch-library.com/454331OR9/lib454331.png

o = Employee.get_by_id(442)
logging.debug(o.name.encode('utf-8'))

↓結果

db/__init__.py", line 2696, in validate value = self.data_type(value)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/datastore_types.py", line 1138, in __new__
return super(Text, cls).__new__(cls, arg, encoding)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)
INFO 2011-11-20 14:20:23,866 dev_appserver.py:2753] "GET /a HTTP/1.1" 500 -

こんな感じです。
515nobodyさん:2011/11/21(月) 00:09:54.05 ID:???
エラーメッセージは省略せず全部貼れ
長くて貼れないときはpastebin.comとか使え
516nobodyさん:2011/11/21(月) 01:25:03.16 ID:???
>>511
どうせ毎度のこれだろ

import sys
stdin = sys.stdin
stdout = sys.stdout
reload(sys)
sys.setdefaultencoding('utf-8')
sys.stdin = stdin
sys.stdout = stdout
517nobodyさん:2011/11/21(月) 08:22:20.32 ID:???
エラーログ貼りました。それで今さっき気づいたんですが
logging.debug()はきちんとターミナルに出力してました。出力後の処理でエラーになってるようです。

エラーコード
http://pastebin.com/xJAqvn7s

ちなみにlogging.debug()のクラスの全体はこんな感じです。

class A(webapp2.RequestHandler):
 def get(self):
  o = Employee.get_by_id(442)
  logging.debug(o.name.encode('utf-8'))
  return
518nobodyさん:2011/11/21(月) 10:01:11.54 ID:???
>>517
Issue 6378 - googleappengine - SDK ->
Logging has unhandled UnicodeDecodeError exceptions (root cause is not shown) - Google App Engine - Google Project Hosting
http://code.google.com/p/googleappengine/issues/detail?id=6378
最近入ったバグっぽいね
519nobodyさん:2011/11/21(月) 10:33:48.74 ID:???
またうにこーどか!!
520nobodyさん:2011/11/22(火) 08:07:57.78 ID:???
SDKのバグの可能性ってことですね。ありがとうございます。
521nobodyさん:2011/11/24(木) 23:14:56.45 ID:???
AppEngine Pythonでサイト作った。
ローカルで動かすと、Firefoxでは問題なく動くけど、Chromeだとページにアクセスするごとに意味不明なウェイト(10secぐらい?)が入る。
ただしcssファイルへのアクセスにはウェイトが入らない。
localhost:8080でも127.0.0.1:8080でも同じ。
原因がさっぱりわからない。だれか助けて。
522nobodyさん:2011/11/25(金) 08:44:33.39 ID:???
ごめん無理
523nobodyさん:2011/11/25(金) 17:54:33.24 ID:???
逆引きじゃね?
524nobodyさん:2011/11/25(金) 19:37:31.34 ID:???
>>523
localhostに対しても逆引きを行うものなの?
それから、Firefoxでは問題ないんだけど、Chromeだけが逆引きしてるってこと?
525nobodyさん:2011/11/26(土) 10:01:00.40 ID:???
>>521
8.8.8.8.のGoogleのDNS設定してね?
526nobodyさん:2011/11/26(土) 11:20:33.67 ID:???
527nobodyさん:2011/11/26(土) 11:26:12.61 ID:???
528nobodyさん:2011/11/26(土) 12:32:25.60 ID:???
>>526
そのサイト面白いなw
529nobodyさん:2011/11/27(日) 09:36:29.05 ID:???
毎日2ドルの請求が来るんだが。。
530nobodyさん:2011/11/27(日) 09:43:56.02 ID:???
毎日じゃなくて毎週だろ?
課金有効にすると毎月9ドルの基本料金が掛かります
請求は週ごとに2.1$
531nobodyさん:2011/11/27(日) 09:56:27.50 ID:???
今のトレンドは、その最低課金でついてくる無料分クォータで収めることっぽいな
532nobodyさん:2011/11/27(日) 10:43:34.55 ID:???
>>525
その通りでした。
DNSサーバの設定から8.8.8.8と8.8.4.4を外すと、localhostでも待たされることなく表示されるようになりました。
逆引きうんぬんは関係ないようですね。
また8.8.8.8をつかったままにしたい場合は、localhostのかわりに127.0.0.1を使うといいようです。
ありがとうございました。

533nobodyさん:2011/11/27(日) 17:39:39.06 ID:???
最低課金で済むくらいなら
VPSでも借りた方がいい
534nobodyさん:2011/11/27(日) 19:55:52.53 ID:???
月9ドルなら最早いまどきのVPSの方が高性能で安いしな
535nobodyさん:2011/11/27(日) 21:53:05.99 ID:???
料理は自分で作れば安い
というタイプか
536nobodyさん:2011/11/28(月) 00:40:46.99 ID:???
高性能さを体感できるほど、人が来てくれない件についてはともかく

もうOSとか管理したくないよ。
537nobodyさん:2011/11/28(月) 10:19:47.11 ID:???
そもそもOSの管理人任せにしてたから大幅コストダウンだよ
538nobodyさん:2011/11/28(月) 10:52:55.29 ID:???
管理しなくていい・オートスケーリング・無料で始められる
この3点だけ従量が少々お高くても価値はあると思う。
webサービスって一時的にアクセス増大することも多々あるので、スケーリングなんかも魅力的だよねー
539nobodyさん:2011/11/28(月) 13:23:11.55 ID:???
いたいな
540nobodyさん:2011/11/28(月) 14:55:03.79 ID:???
Google App Engineは他のクラウドと比べて割高
541nobodyさん:2011/11/28(月) 15:10:19.52 ID:???
まったく同等の機能を持つクラウドと比較しないとナンセンス
542nobodyさん:2011/11/28(月) 16:11:51.03 ID:???
別に機能を生かしているわけでもないでしょ
値上げ前の安さに釣られただけだもん
543nobodyさん:2011/11/28(月) 16:45:42.50 ID:???
そういう人はもう残ってないだろ
544nobodyさん:2011/11/28(月) 17:31:40.84 ID:???
> 別に機能を生かしているわけでもないでしょ
ネガ乙
まるで反論になってない
545nobodyさん:2011/11/28(月) 17:48:48.87 ID:???
>>542にとっては
GAEの機能を生かせず高くつく
ということか
546nobodyさん:2011/11/28(月) 20:11:44.03 ID:???
馬鹿には無理
547nobodyさん:2011/11/28(月) 20:26:17.25 ID:???
手軽に作るには、ちょっと高くなった(主に個人)
コストをペイできるレベルだと、ロックインが怖すぎる(主に法人)

という状態
548nobodyさん:2011/11/29(火) 13:21:50.96 ID:???
メモリエラーが出てしまうdb操作についてなにか参考になるリンクがあったらご紹介いただけないでしょうか
一つのモデルにエンティティが300くらいあって
複合検索条件を満たすためにインデックスを20程設定したところ
単純に
hoge.gql(u" ORDER BY ID LIMIT 200")
という操作でさえメモリーエラーが出るようになりました
LIMITを150にすると通ります

これをせめて500以上操作できるようにしたいのですが、どの方法が効果的でしょうか?

モデルを分割して検索条件だけのモデルを作成他のデータはReferencePropertyで紐付けする
モデルを分割して検索条件だけのモデルを作成他のデータは自前のIDで紐付けする
インデックスを整理
他の方法

データの分割はリストを作成する手間を考えると極力避けたいです
ReferencePropertyで紐付けすると検索に成功しても子データにアクセスした瞬間にメモリが一気に増えるのでしょうか?
インデックスの整理だけでどの程度なんとかなるものでしょうか?
試せばわかることではありますが、どの順番で試したらいいかくらいの方向性が見えるとありがたいです。
ヒント程度で何かアドバイスをお願いいたします。
549nobodyさん:2011/11/29(火) 14:43:06.23 ID:???
"メモリエラー"ってのは具体的になんだ?
tracebackを全部貼れ
550nobodyさん:2011/11/29(火) 16:29:12.14 ID:???
>>549
ありがとうございます。
ローカルでは再現しないのでトレースバックはないです。
ログには

"GET /jsonservice?callback=jsonp1322547031729&_=1322547106213&com=BKdata&floatformat=true&sksijky=%E4%BD%9C%E6%88%90%E6%B8%88%E3%81%BF
HTTP/1.1" 500 0 - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko)
Chrome/15.0.874.120 Safari/535.2" "hoge.appspot.com" ms=4727 cpu_ms=5346 api_cpu_ms=1846 cpm_usd=0.148551 loading_request=1
exit_code=105 instance=00c61b117cefbe7b4f955522bf1e191109597807
C 2011-11-29 15:11:48.360
Exceeded soft private memory limit with 173.582 MB after servicing 0 requests total
I 2011-11-29 15:11:48.360
This request caused a new process to be started for your application, and thus caused your application code to be loaded for the first time.
This request may thus take longer and use more CPU than a typical request for your application.
W 2011-11-29 15:11:48.360
While handling this request, the process that handled this request was found to be using too much memory and was terminated. This is likely to
cause a new process to be used for the next request to your application. If you see this message frequently, you may have a memory leak
in your application.

ブラウザには致命的なエラーがどうとかレポートしてくれよどうとかってグーグルの定型の画面が出ます。
551nobodyさん:2011/11/29(火) 18:42:15.22 ID:???
インデックス関係なくてプロパティが多すぎるのでは?
インデックスをいったん削除して試してみて
552nobodyさん:2011/11/29(火) 19:01:23.96 ID:???
>>551
了解しました

やはりプロパティが多すぎるのは致命的ですか・・・
プロパティ増やさずインデックス増やしたところ最近エラーが出始めたので
減らしてみる価値あるかも知れないです
553nobodyさん:2011/11/29(火) 19:24:44.94 ID:???
>552
エラー関連の話は、appengineのグループで聞いた方が早いよ
エバンジェリストが常駐してるし
554nobodyさん:2011/11/29(火) 22:42:07.49 ID:???
Google App Engineが値上げしたおかげで
GAE使おうと提案した俺の社内での立場が微妙になりましたよ
555nobodyさん:2011/11/30(水) 07:36:20.91 ID:???
高くなりすぎだろ
バカか
放置してたの久々に見たらマジで30倍くらいになってて目が飛び出そうになったわ
反映数週間で気づいてよかった
556nobodyさん:2011/11/30(水) 08:41:41.86 ID:???
GAEでもパケ死するんだね。
パケホーダイってないの?
557nobodyさん:2011/11/30(水) 08:53:49.04 ID:???
>>556
$9+自分が設定した金額しか使われないからパケ死なんて無い
558nobodyさん:2011/11/30(水) 09:08:48.54 ID:???
>>553
そうですね一度相談してみます
559nobodyさん:2011/11/30(水) 11:40:37.31 ID:???
>>557
サービスが止まるわけだから
実質死ぬけどな
560nobodyさん:2011/11/30(水) 14:14:47.89 ID:???
>>548
>他の方法

GAEを捨てる
561nobodyさん:2011/11/30(水) 14:58:43.57 ID:???
HTTP実装はまた流行るよ。
VPSが安くなってきたから。
レンタルサーバが安くなってくると同時にLinuxが流行ったのと同じ感じ。
562nobodyさん:2011/11/30(水) 18:38:21.18 ID:???
インスタンス数さえ制限すればそんなに急激に変わらないんだろ?
563nobodyさん:2011/12/02(金) 16:17:42.59 ID:???
そんなに高いか?
Paasと考えてもAWS Beanstalkと比べるとかなり安いような
2倍ぐらい違わない?

計算方法が間違ってるのかな?
どこかに比較サイトとかないかな
564nobodyさん:2011/12/02(金) 23:36:55.69 ID:???
python2.7のwebapp2はどうやら
他のサーバーでも使えるって書いてあるみたいだな

ロックインで不満続出したのがよっぽど痛かったのかな
webapp2を使えば、とりあえずGAEアプリの持ち出しは可能になったと見ていいのかな?
565nobodyさん:2011/12/03(土) 01:10:47.13 ID:???
>>564
データベース周りが決定的に違うから無理
566nobodyさん:2011/12/03(土) 01:33:45.29 ID:???
SQL使えるようになったらそれも解決かな?
567nobodyさん:2011/12/03(土) 01:52:13.83 ID:???
誰かフリーでGQL互換のラッパ作らないのかな
568nobodyさん:2011/12/03(土) 15:10:16.81 ID:???
作ったよ
自分で脱出するのに使った
気が向いたら公開してもいい
569nobodyさん:2011/12/03(土) 17:44:04.26 ID:???
ちょっと前にwebapp2テストした時にApacheで動かせなかった
570nobodyさん:2011/12/04(日) 10:42:49.52 ID:???
webapp2てtipfyの中の人がつくってるんじゃないの。
571nobodyさん:2011/12/04(日) 14:58:24.00 ID:???
python2.7のスレッドセーフについて調べています。

webapp.RequestHandler を継承しているクラスの
フィールド変数は共有されるのかどうかについて、
どなたか教えていただけませんでしょうか。

クラス外の変数は共有されるというのがわかりました。
例えば以下の変数 testA は同一プロセス内ユーザAとユーザBとで共有され
ユーザAが testA の値を 2 に書き換えると、ユーザBの testA の値も 2 になると。

testA = 1
class Index(webapp.RequestHandler):
  def get(self):
    self.testB = 1
    testC = 1

ここで、self.testB はどうなのでしょうか。
ユーザA が値を 2 に書き換えると
ユーザBの self.testB の値も 2 になるのでしょうか。
もし変更される場合、testC のように
ローカル変数を生成すれば問題は解決する、ということでよいでしょうか。
572nobodyさん:2011/12/04(日) 16:04:39.66 ID:???
なりません
573571:2011/12/04(日) 17:23:07.97 ID:???
ありがとうございます
574nobodyさん:2011/12/09(金) 08:34:15.74 ID:???
python image libraryで遊ぼうと思ったのだが、Image.openがファイル名要求するから、
urlfetchしてきたデータを一度blobで擬似ファイルにゴニョゴニョしないといかんのか。
ドキュメントも丸投げだし、多少手を入れるつもりなのだろうか。
575nobodyさん:2011/12/09(金) 08:55:18.27 ID:???
StringIO
576nobodyさん:2011/12/11(日) 13:39:18.23 ID:???
去年作ったマスター/スレーブ型データストアで上限2ドルに設定したアプリの請求が
来るようになったんですが、なんなんすかこれ。
当然アクセスは0なんで無料枠の範囲内のハズです。
577nobodyさん:2011/12/11(日) 13:54:04.49 ID:???
578576:2011/12/11(日) 14:27:28.88 ID:???
なるほどー
579nobodyさん:2011/12/12(月) 06:10:00.86 ID:???
値上げに気付かず
毎月9ドルずつ取られる奴
続出か
580nobodyさん:2011/12/12(月) 10:07:44.76 ID:???
これだけ話題になったのに
価格設定変更に気づかないとか
そんな人多くないでしょ
581nobodyさん:2011/12/12(月) 13:42:32.55 ID:???
設定したまま放置の人が今頃気づいてるってとこか
普段から使ってるとか、ちょうど開発してたとかは気づく
582nobodyさん:2011/12/12(月) 20:10:24.92 ID:???
まるで詐欺ですね
583nobodyさん:2011/12/12(月) 23:29:02.46 ID:U+NGKBIJ
そういやメールでの通知もなかったような…
まあひとつもアプリS-inしてないけど
584nobodyさん:2011/12/13(火) 02:35:59.58 ID:???
585nobodyさん:2011/12/15(木) 22:03:52.26 ID:???
webapp2のRegistryってどんな時に使うと便利なんでしょう?
http://webapp-improved.appspot.com/guide/app.html#registry
586nobodyさん:2011/12/17(土) 23:58:55.42 ID:???
【ウェブアプリケーションという不幸 】

現在、多くのプログラマ(素人)がウェブアプリケーションというものがベストな正しい方向だと勘違いしている。
ソフトウェアの作るにおいてそのアプリケーションに応じた状態遷移を実装するというのは基本中の基本である。
その点においてウエブブラウザというある状態遷移が実装されているアプリケーションの上に
また別のアプリケーションを実装するのは論外である。
そこまでするなら普通にアプリケーションを実装してダウンロードして使ってもらえばいいのである。
ウェブアプリケーションとは虚構にしか他ならない。
ウェブアプリケーションを作ろうとしているあなた。
今すぐ普通のアプリケーションとし設計し始めてはいかがだろう。
そうすればきっと後悔しないですむ。

HTMLやHTTPを悪者にはしていない。
TCP/IPができあがり、その応用として、ファイルを送ったりするようになった。
ファイルの中身のテキストにデータ構造をもたせ、それはつまりツリー構造なわけだが
その実装としてのハイパーテキスト、つまりHTMLという送る側と送られる側で決め事(プロトコル)
をつくり、画像や音楽など表現の幅を広げることは当然の成り行きだっただろう。
そして、その送る側としてのHTMLファイルサーバ、つまりWebサーバ、送られる側としてのプロトコルの解釈・表示系としての
ブラウザというアプリケーション。
ここまではいい。
だが、そこから先が素人の発想というか、いそがばまわれを忘れた者の愚かな発想。
つまりブラウザ上で、アプリケーションを動かすという発想なのである。
ブラウザというのは、おくられてきたステートレスな通信内容の一瞬の表示手段でしかない。
つまりアプリケーションのためのひとつのパーツなのである。
Windowsでいえば、コントロールのひとつ。(実際WebBrowserというコントロールがある。)
JavaならWebClietnだ(これは、ブラウザではないが。)。
包含関係が逆なのである。
ブラウザ上にアプリケーションを作るのは愚かなブームである。
587nobodyさん:2011/12/18(日) 00:31:38.89 ID:???
どこからのコピペだ
588nobodyさん:2011/12/18(日) 00:42:26.63 ID:???
具体的な問題点の指摘が一切ないな
読んで損した
589nobodyさん:2011/12/18(日) 02:56:22.94 ID:???
590nobodyさん:2011/12/18(日) 11:22:33.19 ID:???
webapp2_extrasのsecurecookieモジュールって全然セキュアじゃねーじゃん。。。
いいのかよこれ
591nobodyさん:2011/12/18(日) 16:48:47.35 ID:???
import したモジュールを呼び出すと
UnboundLocalError: local variable 'model' referenced before assignment
と言われるようになる。

コピペしているうちに動いたのだけどソースコードの長さを一定以下にすると動くことがわかった
そういう制約についてなにか知ってますか?

あとsimpleJsomでループに落ちたあげく
RuntimeError: maximum recursion depth exceeded
というエラーが出ています。
http://sunabako.sblo.jp/article/45648104.html
ここを参考にGqlEncoderを作成したんですが、上記で問題がおきるモデルだけエラーになります。

それ以前にしたことと言えば上記で問題が起きるモデルの定義を若干いじっただけ
コンパイルに問題があるかと思って削除してみましたが変わらず
モデルをいじる前にSDK1.6.1にバージョンアップしたかも知れません。

原因がつかめず困ってます。なんでもいいのでヒントをお願いします。
592nobodyさん:2011/12/18(日) 16:49:16.85 ID:???
あ、pythonは2.5で動かしてます
593nobodyさん:2011/12/18(日) 16:55:23.64 ID:???
>>591
まずはエラーメッセージを読んでエラーの内容を理解することから始めましょう
594nobodyさん:2011/12/18(日) 17:02:43.69 ID:???
>>593
local variable 'model' referenced before assignment
については関係ないif文を削除するとエラーが出なくなります。
関数一つあたりの行数制限はありますか?

maximum recursion depth exceeded
についてはループにハマってるようなのですがモデルを変更すると正常に動きます。

なにかヒントをお願いします。
595nobodyさん:2011/12/18(日) 17:07:35.12 ID:???
>>594
local variable 'model' referenced before assignment
maximum recursion depth exceeded
これを読むと分かります
596nobodyさん:2011/12/18(日) 17:52:52.74 ID:???
>>595
local variable 'model' referenced before assignment
このmodelは
from models.model import model
という記述下にあり、case文の代わりに記述してある
長いif文を半分にすると出なくなります。
ですが理由がわかりません。ご存知でしたら教えてください。

maximum recursion depth exceeded
これも上記のmodelがエラーを吐かなくなったときにmodelの操作中だけ出ます。
試しに別に定義したmodelで動かしてみると正常に動きます。
modelの複雑さやデータの量はむしろ後者のほうが多いです。
再帰呼び出しが深くなりすぎる理由がわかりません。
597nobodyさん:2011/12/18(日) 18:08:48.61 ID:???
maximum recursion depth exceeded
につきましてはまったく同じ構造で名前が違うmodelを定義して食わせたところ正常に動作しているようです。
どうやらローカルのデータが壊れている模様です。
なぜローカルのデータが壊れているとmaximum recursion depth exceededが出るのかご存知でしたら教えてください。

local variable 'model' referenced before assignment
につきましては未だに原因がわかりません。
約1000行ほどのソースだとimportしたことを忘れてしまうようです。
ご存知のかたありましたらお願いします。
598nobodyさん:2011/12/18(日) 18:16:17.10 ID:???
599nobodyさん:2011/12/18(日) 18:19:10.86 ID:???
tracebackにどこの行で例外が発生したか書いてあるだろ
600nobodyさん:2011/12/18(日) 18:21:22.45 ID:???
601nobodyさん:2011/12/18(日) 18:28:01.69 ID:???
意味は理解しているつもりですが・・・

from models import model

  if ...

  elif com=="model":
    gql = model.all()
    gql.filter("name","test")

  elif com==...

  elif com==...

  elif com==...


こういう記述の結果1000行を超えたあたりで
local variable 'model' referenced before assignment
がでます。

これは本番環境でも出てしまいます。
後半のelifを消していくと再び動き出します。

理由をご存知のかた、よろしくお願いします。
602nobodyさん:2011/12/18(日) 18:34:50.83 ID:???
pass
603nobodyさん:2011/12/18(日) 18:35:27.76 ID:???
>>601
じゃあ、どういう意味か書いてみなよ
604nobodyさん:2011/12/18(日) 18:37:00.25 ID:???
tracebackを全部貼れ
605nobodyさん:2011/12/18(日) 18:37:40.25 ID:???
>>603
変数modelが代入される前に参照されている、という意味では?
606nobodyさん:2011/12/18(日) 18:39:07.57 ID:???
>>605
それでどこの行で例外が発生しているの?
607nobodyさん:2011/12/18(日) 18:39:11.52 ID:???
Traceback (most recent call last):
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\ext\webapp\_webapp25.py", line 701, in __call__
handler.get(*groups)
File "C:\Users\casper\PythonWorkspace\amanedb\src\application\json.py", line 55, in get
self.post()
File "C:\Users\casper\PythonWorkspace\amanedb\src\application\json.py", line 329, in post
gql = member.all()
UnboundLocalError: local variable 'member' referenced before assignment

以上です
608nobodyさん:2011/12/18(日) 18:42:32.12 ID:???
特別に教えてやろう
C:\Users\casper\PythonWorkspace\amanedb\src\application\json.pyの329行目だ
あと、modelじゃなくてmemberなのか?w
609nobodyさん:2011/12/18(日) 18:48:14.24 ID:???
>>608
特別に教えていただき光栄です。
modelは抽象的な名前で本番ではmemberです。

modelを変更したあとに変更前に保存してたデータにアクセスしようとするといろいろなエラーが出るのですか?
610nobodyさん:2011/12/18(日) 18:51:12.45 ID:???
日本語でおk
611nobodyさん:2011/12/18(日) 19:02:41.10 ID:???
>>609
どこかでmenberに代入しているかも
http://ideone.com/IDvUA
612nobodyさん:2011/12/18(日) 20:55:35.32 ID:???
>>611
ありがとうございます
みつかりました
まったく関係ないところのforの中にありました
613nobodyさん:2011/12/18(日) 21:19:30.94 ID:???
maximum recursion depth exceeded
についても解決しました
SelfReferencePropertyに自分自身を設定したデータがあり
エンコーダが延々とループに陥っていたのでした。
こんな設定ができないようにコードを修正します。

データが自己参照していない別定義のmodelを設定したらエラーが止まるのもその理由でした。
お騒がせいたしました。
614nobodyさん:2011/12/18(日) 22:25:45.46 ID:???
馬鹿には無理
615nobodyさん:2011/12/20(火) 12:05:26.17 ID:???
お、なんかNGがいる
616nobodyさん:2012/01/01(日) 15:08:14.15 ID:???
webapp2のsessionsモジュールでDatastoreSessionFactoryクラスを使おうとしたんですが、
セッションオブジェクト(辞書)がndbモジュールの型チェックで「文字列じゃないよ!」
って例外に引っかかるんですが、そもそもこのクラスって使っちゃいけないんでしょうか??
617nobodyさん:2012/01/01(日) 22:16:30.51 ID:???
>>616は一回忘れてください
618nobodyさん:2012/01/02(月) 03:36:49.91 ID:???
リダイレクトじゃなくて別ウィンドウを開かせる方法を教えてください
619nobodyさん:2012/01/02(月) 04:42:18.28 ID:???
return '<a href="hoge" target="_blank">fuga</a>'
620nobodyさん:2012/01/02(月) 09:58:20.31 ID:???
どうやら無理っぽいですね
POST を受け取ってから別窓を開きたいんですが
621nobodyさん:2012/01/02(月) 09:58:52.86 ID:???
あ ごめんなさい
return '<a href="hoge" target="_blank">fuga</a>'
試してみます
622nobodyさん:2012/01/02(月) 10:09:25.92 ID:???
できませんでした
623nobodyさん:2012/01/02(月) 11:02:09.57 ID:???
うちはできてる
624nobodyさん:2012/01/02(月) 14:14:00.40 ID:???
えええ
625nobodyさん:2012/01/02(月) 14:30:55.11 ID:???
9$アプリをHRDに移行したいんだけど、移行先も課金設定にしなきゃいけないよね
移行した後、元を消しても9$二重取りされちゃうよね。
っていうので移行に二の足踏んでるんだが…
626nobodyさん:2012/01/02(月) 14:50:31.86 ID:???
なんで元を消したのに二重課金されるんだ?
627nobodyさん:2012/01/02(月) 15:01:39.69 ID:???
>>626
app_id duplicateしてから手動で課金設定にしなきゃいけないんだが、
その時点で9$発生しちゃうんじゃ?


628nobodyさん:2012/01/02(月) 19:31:13.36 ID:???
課金止めればいいじゃない
629nobodyさん:2012/01/02(月) 19:36:15.45 ID:???
DSが5Gあるから無料状態だと移行完了できないんだ
630nobodyさん:2012/01/02(月) 19:40:22.37 ID:???
そんなに利用しているのなら
$9程度払っちまえ
631nobodyさん:2012/01/05(木) 11:15:10.54 ID:???
今一盛り上がらないね
632nobodyさん:2012/01/05(木) 11:50:03.42 ID:???
勝手に股間でも盛り上げてろ
633nobodyさん:2012/01/09(月) 18:03:13.36 ID:???
appcfg.pyでサーバーへメールアドレスとパスを指定してデプロイする時に、
今まではパスは一度入力すれば、後はEnterで自動入力されましたが、
いつの間にか必ずパスも入力しないといけなくなりました。
これは仕様が変わったのでしょうか?とても面倒なのですが。。

これはデプロイするときのコマンドです。
appcfg.py [email protected] update testapp
634nobodyさん:2012/01/10(火) 15:58:40.15 ID:???
スレッドIDは-1で固定でしょうか?

import thread
thread.get_ident()
635nobodyさん:2012/01/10(火) 16:58:32.40 ID:???
Master/Slaveなんだけどなんかつっかえるね・・・
HRDの方が早いならそっちにしようかな
HRDの方が遅いっていうからMaster/Slave使ってるんだけどな
636nobodyさん:2012/01/10(火) 17:10:06.02 ID:???
HRDが遅いと思ったことないな
637nobodyさん:2012/01/10(火) 17:57:59.41 ID:???
サンクス 引越しを検討します

引越ししましたか?
最初から構築?

引越しツールで注意点あったら教えて下さい
638nobodyさん:2012/01/10(火) 18:16:14.54 ID:???
>>633
クッキー保存されないよ、たぶんバグだと思われ
639nobodyさん:2012/01/10(火) 18:35:03.77 ID:???
SDKバグりまくり
640nobodyさん:2012/01/11(水) 16:55:00.21 ID:???
サンプルのvoterlatorのタスクキューってなんか使い方おかしい気がするんですが。。
641nobodyさん:2012/01/12(木) 17:09:51.83 ID:???
今からこのスレ乗っ取るわ
642nobodyさん:2012/01/12(木) 21:33:43.16 ID:???
|....,,__
|_::;; ~"'ヽ
| //^''ヽ,,)
|  i⌒"
| ∀`) < 誰もいない きのこるならいまのうち
|⊂
| ノ
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
      |( ´∀`) < きのこ のこーのこ げんきのこ ♪
      |(ノ   |つ
      |     |
     ⊂ _ ノ
       ""U
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
     (´∀` )| < エリンギ まいたけ ブナシメジ ♪
    ⊂|  (ノ |
      |     |
      ヽ _ ⊃
      .U""
|
| ミ
| ミ  サッ!
| ミ
|
643nobodyさん:2012/01/12(木) 23:10:47.16 ID:???
ぬるぽ
644nobodyさん:2012/01/21(土) 14:53:39.60 ID:???
BackendsでB4をデプロイしてみたら、いきなり1hour分持ってかれて驚愕したわ
645nobodyさん:2012/01/25(水) 00:42:08.04 ID:???
独自ドメインのHTTPSってまだ対応してないですよね?
646nobodyさん:2012/01/25(水) 12:51:04.38 ID:???
>>645
これってなんで対応してくれないの?
個別に証明書をサーバに登録すればいいだけの話ではないのかな。
647nobodyさん:2012/01/25(水) 13:14:48.03 ID:???
IPアドレスを1個必要とするから、必要な人は声かけてくれって例の人が言ってたような記憶がある
648nobodyさん:2012/01/26(木) 08:29:13.47 ID:???
IPの消費もさることながら、証明書の認証局によってはサーバー単位にライセンスが必要だったりするから、自動でスケールアウトするAppEngineでは契約的に無理だったりする。
その辺は使える認証局を限定するとかで回避するにしても色々めんどうな話が多そうだ。
技術的にはそこまで難しくないとは思うけど。
649nobodyさん:2012/01/26(木) 16:43:56.19 ID:???
参照を失ったReferencePropertyをチェックするには
try: except: するしかないんでしょうか?

データストアにアクセスせずkeyを取得する方法とか組み合わせてできないかと思って

http://blog.livedoor.jp/abars/archives/52045594.html

これ参考にコード書いてみましたがbbs_keyのところでno attribute エラーがでました
なにかよい知恵があったら教えてください
参照先が消えてるかもしれないところをすべて try: except: してたらReferencePropertyの
利便性なんて消し飛ぶほどめんどくさいんですが
650nobodyさん:2012/01/26(木) 17:06:31.58 ID:???
>>649
bbs_key.get_value_for_datastoreじゃなくて
bbs.get_value_for_datastoreじゃねえの?
651nobodyさん:2012/01/26(木) 17:17:33.47 ID:???
>>650
ありがとうございます。
さっそく試してみます。
652nobodyさん:2012/01/28(土) 18:40:41.58 ID:???
datastore内データのアップロード、ダウンロードで
bulkloader.yamlファイルの指定する方法と
自分でローダークラスを作成する方法の
二種類があるっぽいんですが、この2つは何が違うんでしょうか??
bulkloader.yamlは簡単にうpできた、ローダークラスは自分でカスタムしてうpできるみたいな感じでしょうか?
653nobodyさん:2012/01/31(火) 11:28:53.50 ID:???
そうね。CSV以外のデータを読み込んだり
アップロード時にkey_name指定したりできる。
mysqlに接続して取得しながらアップできるかもしれない
654nobodyさん:2012/02/01(水) 15:12:07.44 ID:???
>>653
bulkloader.pyのソース見ながら試してみましたが
key_nameを指定したエンティティやreferenceプロパティの設定とかできるんですね。
ありがとうございます。
655nobodyさん:2012/02/10(金) 02:05:56.05 ID:???
GAEでPlone動かしてみたい
656nobodyさん:2012/02/10(金) 04:09:09.74 ID:???
馬鹿には無理
657nobodyさん:2012/02/10(金) 13:14:44.63 ID:???
ひどいっ
658nobodyさん:2012/02/10(金) 18:01:55.50 ID:???
GAEもっと盛り上がっていいはずなのになんでこんな過疎ってんの?
659nobodyさん:2012/02/10(金) 18:10:39.84 ID:???
過疎っているというか話すことが無い
APIは簡単に使えるし、不具合があればグループで聞く方が速い
660nobodyさん:2012/02/10(金) 18:46:27.19 ID:???
これ以上設定が面倒になるとサーバー管理してるのとかわらなくなるよね

それだけが不安
661nobodyさん:2012/02/11(土) 11:28:01.61 ID:???
GAE高いし
662nobodyさん:2012/02/11(土) 15:13:37.45 ID:???
コスト計算できない人にとっては
高いんだろうなあw
663nobodyさん:2012/02/11(土) 15:16:46.09 ID:???
EC2の方が自由度も高くて全般的に安い
664nobodyさん:2012/02/12(日) 12:33:05.19 ID:???
でもEC2ってサーバー側の環境自分で構築しないといけないんでしょ?
スマホに例えると
GAE → iPhone
EC2 → Andoroid
みたいな
665nobodyさん:2012/02/12(日) 12:49:32.77 ID:???
はぁ?
666nobodyさん:2012/02/12(日) 13:02:53.73 ID:???
ゲームに例えると
PS3=GAE
XBOX=EC2
だな!
667nobodyさん:2012/02/12(日) 21:55:30.51 ID:???
課金有効にした時のMail APIの仕様意味わかんないんですが、、、英語的な意味で、、、
これどういう意味ですか?

100 recipients until first charge cleared; 2000 recipients free and no maximum thereafter

http://code.google.com/intl/ja/appengine/docs/quotas.html#Billable_Resources
668nobodyさん:2012/02/14(火) 09:15:49.97 ID:???
はじめの100件が変わるまで、2000件の送信が無料。それ以降は上限なし。
かな?よくわからん。俺も知りたくなってきた
669nobodyさん:2012/02/14(火) 11:57:36.99 ID:???
>>668
changeちゃう chargeや
670nobodyさん:2012/02/14(火) 13:06:18.71 ID:???
課金の画面には書いてる
Recipients Emailed $0.01/ 100 Recipients
100通で1セント 1万通で1$(80円くらい)

たしか無課金が100通まで無料
課金が2000通まで無料(1週間で2.1$課金)
それ以上が100通で1セントじゃね?
671nobodyさん:2012/02/14(火) 14:15:39.24 ID:???
>>670
わたしの理解もそう
672nobodyさん:2012/02/14(火) 14:31:47.21 ID:???
まとめ
1.無課金は100通まで(それ以上は課金)
2.課金(週$2.1)は2000通まで無料、それ以上は100通0.01$
673nobodyさん:2012/02/14(火) 15:13:23.57 ID:???
>>669
あwチャージかwwサンクスww
674nobodyさん:2012/02/17(金) 09:33:14.60 ID:???
>>667
>until first charge cleared
ってどういう意味なんだろ。最初の課金がクリアされるまで?なんのこっちゃ?
675nobodyさん:2012/02/17(金) 11:14:07.95 ID:???
最初の課金が明らかになるまで?
676nobodyさん:2012/02/17(金) 11:25:37.69 ID:???
いちいち直訳すんなよかったるい

課金分使いきるまで

でいいだろ
677nobodyさん:2012/02/18(土) 20:58:40.11 ID:???
>>674
こういうのって中学レベルの英語なのかなあ。
clearedという過去分詞が文法的にどう作用するのかさっぱりわからん。
678nobodyさん:2012/02/18(土) 21:11:07.86 ID:???
こんなだから日本のプログラマーどもは10年遅れとか言われちゃうんだな。

お前ら一番最初に習得すべき言語を間違ってないか?
679nobodyさん:2012/02/18(土) 21:41:39.03 ID:???
そういうなら教えてくれよ
680nobodyさん:2012/02/18(土) 22:03:55.91 ID:???
単なる前置詞+SVでは?
681nobodyさん:2012/02/19(日) 00:00:17.18 ID:???
英語の能力とプログラミングの能力は関係ないと思うぞ

真面目に英語で書いたって保守性が上がるわけじゃない
682nobodyさん:2012/02/19(日) 00:16:36.10 ID:???
関係あると思うぞ
683nobodyさん:2012/02/19(日) 12:36:35.68 ID:???
>>680
それなら until first charge is cleared ではないの?
#中学英語すらままならぬ。
684nobodyさん:2012/02/20(月) 12:41:52.54 ID:???
過去分詞じゃないから is いらない
685nobodyさん:2012/02/21(火) 21:36:18.29 ID:???
>>667
暇だから訳してみよう。

[Free Default Limit]
100 recipients

[Billing Enabled Default Limit]
100 recipients until first charge cleared;
100 recipients free and no maximum thereafter
686685:2012/02/21(火) 21:41:07.65 ID:???
以下はその訳。

[無料の規定における制限]
(送信対象)100メールアドレス

[課金が有効になる規定における制限]
100メールアドレスまでの場合、課金はクリアされる;
100メールアドレス無料。その後は無制限。

要するに日毎にカウントされて100メールまでなら無料。
それを超えると課金されるが定額、ってところか。
687nobodyさん:2012/02/29(水) 17:22:52.26 ID:???
英語教室は、はてなでやれ
688nobodyさん:2012/03/01(木) 09:45:52.51 ID:???
10日も前のレスに・・・・

少なくとも>>687よりは有益だし
689nobodyさん:2012/03/01(木) 14:08:52.32 ID:???
今日のGAEのメンテナンスが結局延期なんだってさ…
そもそもメンテナンス自体知らない人多いとおもうけど、次の告知来たら貼っておくよ
690nobodyさん:2012/03/01(木) 14:33:53.05 ID:???
メンテってサービス止めちゃうわけ?
そういうわけじゃないでしょ?
691nobodyさん:2012/03/01(木) 16:51:49.86 ID:???
DSがReadOnlyになる
692nobodyさん:2012/03/01(木) 17:19:55.07 ID:???
そりゃサービス止めるよ。
dbがread onlyになったら実装上動かせないってのは多いとおもう。
693nobodyさん:2012/03/01(木) 17:22:36.30 ID:???
うへ知らんかった・・・

ぜひ情報教えてくだすれ
694nobodyさん:2012/03/03(土) 04:48:14.08 ID:???
メンテナンスによる停止はサービス停止時間に含まれません(キリッ)
695nobodyさん:2012/03/09(金) 00:54:29.29 ID:???
メンテ後からデータストアがクッソ重くて5秒10秒当たり前なんだけど何かあった?
そんなことないならそんなことないって言ってくださいお願いします
割とピンチ
696nobodyさん:2012/03/09(金) 01:35:29.86 ID:???
M/Sを窓から投げ捨てろ
697nobodyさん:2012/03/09(金) 02:26:17.42 ID:???
HRDじゃないともうダメなの?
HRDならどっかにダイジョブなデータストアがあるからダイジョブダイジョブってこと?
HRDって別アカにしないといけないんでは…?
698nobodyさん:2012/03/09(金) 09:41:16.96 ID:???
M/Sの方が早いって言うからがんばって使ってるのによー
699nobodyさん:2012/03/10(土) 19:58:55.63 ID:???
自分はM/Sが重くなった感じはしないんだけど、ほかの人はどうかな?
あと別件で、Instanceの立ち上げで凄く時間がかかって、60秒ルールでDEEが起きて死ぬことがある。
こうなるとしばらくサイトが500エラー表示になるので勘弁してほしい。
700nobodyさん:2012/03/10(土) 20:16:52.01 ID:???
Javaじゃあるまいしバグってるとしか思えん
701nobodyさん:2012/03/15(木) 21:55:35.50 ID:???
Exceeded soft private memory limit with 133.348 MB after servicing 6 requests total

こんなエラーが出るんだけど設定でどうにかなる?
702nobodyさん:2012/03/15(木) 22:00:34.07 ID:???
Applicaiton Settingsでメモリ増やせる
703nobodyさん:2012/03/15(木) 22:03:56.04 ID:???
一つランクを上げるごとにInstance hoursが倍掛かるようになるから注意
704nobodyさん:2012/03/15(木) 23:25:53.38 ID:???
了解 感謝する
705nobodyさん:2012/03/15(木) 23:32:04.50 ID:???
なんかDatastore Stored Dataの容量がリフレッシュされなくなった…
GAEマジ意味わかんねぇな
もうやめるつもり
706nobodyさん:2012/03/16(金) 01:50:49.71 ID:???
チラッ
707nobodyさん:2012/03/23(金) 22:28:14.49 ID:???
今夜デプロイ遅すぎ
Checking if deployment succeeded.
Will check again in 60 seconds.
なんてはじめて見たしこれが画面いっぱいになっとる
708nobodyさん:2012/03/29(木) 13:07:20.25 ID:???
Over Quota

This application is temporarily over its serving quota. Please try again later.
709nobodyさん:2012/03/29(木) 17:25:38.84 ID:???
ちゃんと設定したら0になった よかった
710nobodyさん:2012/04/01(日) 12:08:16.13 ID:???
https://groups.google.com/group/google-app-engine-japan/browse_thread/thread/e2580d6d409caa45?hl=ja
>SELECT __key__ FROM Hoge WHERE ...." というクエリで 2500 件ぐらいの key を 取り出したりしていました

これを参考にkeyだけを取り出すコードを書いてましたが1000件以上のデータが取り出せません。
取り出したあとはまるまるmemcacheに放り込んでます。
cacheddata=listcount":listcount,"done":0,"list":list,"sddb":sddb,"chanksize":chanksize,"corp_name":cls.corp_name,"msgkey":msgkey,"tasks":0}
memcache.set(id,cacheddata ,3600)

ひょっとしてガセでしたか?
711nobodyさん:2012/04/01(日) 12:17:12.15 ID:???
cacheddata={
括弧が消えてました すみません
712nobodyさん:2012/04/01(日) 12:22:33.37 ID:???
日付を見ろ
あと、ソースを出せ
713nobodyさん:2012/04/01(日) 12:30:38.71 ID:???
お手数かけます

def getdata(sqlstr)
list = db.GqlQuery("SELECT __key__ FROM data " + sqlstr )
return list

def setdata();
list = getdata(" WHERE e1 = 'e1' AND ....... ")
listcount = list.count()
cacheddata={listcount":listcount,"done":0,"list":list,"sddb":sddb,"chanksize":chanksize,"corp_name":cls.corp_name,"msgkey":msgkey,"tasks":0}
memcache.set(id,cacheddata ,3600)

こんな感じです。よろしくおねがいします。
714nobodyさん:2012/04/01(日) 12:36:23.97 ID:???
WHERE句の中では>も使ってます。
715nobodyさん:2012/04/01(日) 12:58:30.76 ID:???
2000件ぐらいあるデータでWHERE指定でcountは問題なく取れた
countが取れてないの?データが取れないのかどっちだ?
716nobodyさん:2012/04/01(日) 13:24:47.44 ID:???
countも1000で止まりますし、keyも1000までしか取れません。
countは規制なくなったって書いてあったし、keyだけなら1000件以上取れると思ってました。
717nobodyさん:2012/04/01(日) 13:26:18.83 ID:???
ちなみにHRDには移行してません
718nobodyさん:2012/04/01(日) 13:35:19.61 ID:???
count(10000)とかでもだめ?
こちらの環境はPython 2.7+HRD+ndbです
719nobodyさん:2012/04/01(日) 14:05:43.34 ID:???
できました!
countに引数与えないと1000になるんですね。
なにげにその後その数字を当てにしてgetしてたのでkeyも1000しかないように見えてました。
無事にすべて取り出すことができました。

ありがとうございました。
720nobodyさん:2012/04/05(木) 09:58:08.40 ID:???
M/S廃止か
Google App Engine Blog: Master/Slave Datastore, thanks for all your hard work
http://googleappengine.blogspot.jp/2012/04/masterslave-datastore-thanks-for-all.html
721nobodyさん:2012/04/05(木) 10:06:07.82 ID:???
なに?!
722nobodyさん:2012/04/06(金) 09:31:08.45 ID:???
そのうちやんなきゃと思ってたけど
blobストアのデータが自動で移転できないから躊躇してた
ツールはあるらしいけど

半年くらい猶予あるのかな?
723nobodyさん:2012/04/06(金) 17:13:44.16 ID:???
よくこんなの使っていられるな、おまえらw
724nobodyさん:2012/04/06(金) 17:24:12.99 ID:???
最近アメロードだかなんだかのサービスを作った人が
調子に乗ってgoogle各種サービスをディスったら、
各方面からボコられて
「google信者様の言うとおりです」と発狂したふりをして幕を閉じるという
なんとも無残な散りざまを見せていたな
725nobodyさん:2012/04/07(土) 12:59:39.04 ID:BeoWQwVe
スクリプト の import と テンプレートの extends とがそれぞれよくわかっておらず、ファイルの置き場所がごちゃごちゃになってしまいます。整理するにはどうすればよいでしょうか。

問題点
● テンプレートの多重継承がうまくできない
operation1.html で {% extends "../master.html" %}
master.html で {% extends "../base.html" %}
とすると base.html が見つからなくなります。どうやら孫にあたる operation1.html からの相対パス ../base.html を探しているようです。
・ テンプレート内の記述を変えずに問題を解決する方法があれば教えてください。
・ django は 最初のバージョンのみでよいので、右記ページのような問題はありません。 http://stackoverflow.com/questions/5263623/templatedoesnotexist-on-python-app-engine-django-1-2-while-template-rendering-re

● import の書き方がわからない
大雑把にいって handler の中身が Controller, libs の中身が Model にあたります。
main.py で handlers1.py を、handler1.py で user_auth.py を、それぞれ import したいです。
・ import 文の書き方を教えてください。__init__.py が必要になるのであれば、内容も教えてください。

次のレスが希望するファイル構成の内容です。著しく不適切であれば指摘してください。
726725:2012/04/07(土) 13:00:07.32 ID:???
ファイル構成:
- app.yaml
- main.py
- handlers
- - handler1.py
- - handler2.py
- libs
- - user_auth.py
- - main_datastore.py
- template
- - base.html
- - master
- - - master.html
- - - operation1
- - - - operation1.html
...
727nobodyさん:2012/04/07(土) 13:06:30.36 ID:???
AppEngine固有の問題ではないので他のスレで聞いた方がいいよ
728725:2012/04/07(土) 13:14:25.12 ID:???
問題点の追加です。
● template.render に渡すパスの取得方法がわからない
多くのサンプルに
self.response.out.write(
 template.render(
  os.path.join(
   os.path.dirname(__file__), 'hoge.html'
  ), result
 )
)
のようなコードがありますが、__file__ は handlers/handler1.py や handlers/handler1/handler1.py を指しており、
hoge.html は template/master/operation/hoge.html などにあります。
このような離れた場所のファイルは、その都度 os.path.join にドットを渡してやることによってしか取得できないのでしょうか。
アプリケーションのメインからの相対パスで指定する方法がありましたら教えてください。
729725:2012/04/07(土) 13:47:31.08 ID:???
>>727
すみませんが他でしたらどのスレッドが適切かわかりません。
730nobodyさん:2012/04/07(土) 15:06:12.58 ID:???
731nobodyさん:2012/04/07(土) 15:15:43.48 ID:???
>>728
アプリのrootにhoge.pyでも作って
import os
APPLICATION_BASE_DIR = os.path.dirname(__file__)

で使いたいところで
from hoge import APPLICATION_BASE_DIR
os.path.join(APPLICATION_BASE_DIR, 'template/master/operation/hoge.html')
とでもすれば?関数にするとか好きにしてね
732725:2012/04/07(土) 16:32:47.80 ID:???
>>730
こちらで訊きます: http://kohada.2ch.net/test/read.cgi/php/1323960422/

>>731
ありがとうございます。この部分は解決したと思います (他の部分がまだなのでテストしていません)。
733nobodyさん:2012/04/15(日) 14:43:22.57 ID:???
タスクキュー設定して毎時でcronから起動してるんですが
毎時ぴったりに2つのタスクが登録されるせいでインスタンスが増えてしまいます


設定でどうにかできませんでしょうか?

queue.yaml
queue:
- name: default
rate: 1/s
734nobodyさん:2012/04/15(日) 16:29:35.85 ID:???
片方のタスクの開始時間をずらせばいいだろ
App Engine の cronフォーマットのまとめ - やさしいデスマーチ
ttp://d.hatena.ne.jp/shuji_w6e/20110403/1301840010
735nobodyさん:2012/04/15(日) 16:31:43.95 ID:???
あとは、max_concurrent_requestsを使ってタスクの同時実行数を制限するか
詳しくはググれ
736nobodyさん:2012/04/15(日) 18:50:52.09 ID:???
おお ありがとう ありがとう
737nobodyさん:2012/04/18(水) 09:16:11.39 ID:???
pydevでプロジェクトをコピーしたり移動したりしているうちにsrc右クリックからpeydev(google app run)が消えました
デバッグの構成から起動はできましたが、直し方をご存知のかたよかったら教えてください。
プロジェクトをコピーしたり、プロジェクトがバグったとき
パッケージエクスプローラーから一度削除してもう一度空の新規プロジェクトを同一のディレクトリで作成すると
うまく行ってたと思うのですが間違ってますか?
738nobodyさん:2012/04/18(水) 20:00:22.44 ID:hrAUVqet
>>737
.pydevprojectの中身確認してみると良いです。

<pydev_pathproperty name="org.python.pydev.PROJECT_SOURCE_PATH">
<path>/project</path>

上のソースパス合ってないとか?

新しくGAEプロジェクト作って照らしあわせてみるとわかるかも
739nobodyさん:2012/04/19(木) 09:12:09.14 ID:???
.pydevprojectのライブラリのパスを絶対パスにしたらうまくいきました!
740nobodyさん:2012/04/20(金) 01:09:11.05 ID:???
Memcacheがどんどん消えちゃうんですが、つっこみすぎ?

Memcache Viewer
Statistics
Hit count: 10724
Miss count: 907
Hit ratio: 92%
Item count: 468 item(s)
Total cache size: 1607620 byte(s)
Oldest item age: 6 min(s) 6 second(s)

741nobodyさん:2012/04/20(金) 19:32:23.28 ID:IHyQVpyC
eclipseのPyDevはまだwebapp2のアプリに未対応でしょうか?
app.yamlの一部を書き換えれば一応動作してるようですが、
自動的に生成されるコードなどは以前のwebappのものです。
どこかで切り替える必要があるのかなあ?
742nobodyさん:2012/04/21(土) 04:11:46.80 ID:???
>>741
app.yamlでpython2.7設定するとgoogle.appengine.ext.webappの中でwebapp2使ようになる
threadsafeしないならhello webapp worldのままで対応できてる
743nobodyさん:2012/04/21(土) 12:16:08.96 ID:902Nv7Ux
巨大なデータに順次処理をかける場合、
巨大なデータをまるごとメモリにおくとメモリ上限に引っかかるから
少し読みだして処理してセーブしてメモリから破棄、
ということの繰り返しでやろうと思ってるんだけど
不要になったメモリはちゃんと開放されるんだろうか?
744nobodyさん:2012/04/21(土) 12:30:07.50 ID:???
コンソールのInstancesでみればいいんじゃねぇの?
745nobodyさん:2012/04/21(土) 17:53:59.35 ID:???
>>743
python的には参照がなくなれば即時GCされるはずだけど
746741:2012/04/22(日) 01:01:25.19 ID:???
>>742
ありがとうございます。そういうことでしたか。
だんだん変更されていくでしょうし、様子見ながら使っていこうと思います。
747nobodyさん:2012/04/22(日) 17:50:29.80 ID:aA4PJf7d
GoogleはGAEにアップロードされたプログラムまたはソースコードを
解析したり参考にしたりする権利はあるの?
748nobodyさん:2012/04/23(月) 22:52:28.36 ID:???
deferredってpython2.7+threadsafeじゃ動かないんですか?
749nobodyさん:2012/04/23(月) 23:07:58.61 ID:???
動くらしいけど
Python 2.7, threadsafe: true, and deferred.defer - Google Groups
https://groups.google.com/forum/?fromgroups#!topic/google-appengine/YxdORLqGEDQ
750nobodyさん:2012/04/24(火) 04:18:37.99 ID:???
1.5.5でfixされたみたいですね。ありがとうございます。
751nobodyさん:2012/04/27(金) 14:50:08.02 ID:93VuBEM9
ログインユーザーのリクエストを処理する時に
ユーザーのOpenIDを取得するにはどうしたらいいの?
User#getNickName()?
752751:2012/04/27(金) 14:53:05.77 ID:93VuBEM9
事故解決
たぶんそうみたいだ
開発環境だとOpenIDじゃなくメルアドが入ってるけど
753nobodyさん:2012/04/28(土) 22:15:01.31 ID:deK//TLp
俺がやってるのはJavaで多分Pythonも同じだと思うけど、
datastoreのkeyにシステムが自動的に採番するIDの代わりにアプリ側で名前を設定できるけど
一意な名前を付けたい場合どうすればいいと思う?
Datastore.allocateId()で作ったキーのIDを取得して名前に付加するとかでいいんだろうか?
754nobodyさん:2012/04/28(土) 22:39:38.96 ID:deK//TLp
リストの要素をdatastoreに入れる場合、名前は一意にすべきなんだろうか、同じにすべきなんだろうか
(そもそも同じ名前のエンティティを作れるのか)
一意にするとクエリで前方一致検索をしなければいけない
同じにするとアップデートをかけたい場合めんどくさそう
755nobodyさん:2012/04/28(土) 23:17:16.74 ID:???
>>753
インクリメントを管理する別のデータを用意してトランザクション内で1足してる
使い捨てのmemcacheIDはnow()とrand()で作ってる

>>754
エンティティを同じ名前にする意味がわからない
756nobodyさん:2012/04/28(土) 23:57:32.67 ID:deK//TLp
>>755
勘違いしていたかも。
キーの名前で検索しようと思ってたんだけど、
そういう場合は別途フィールドを用意して検索用文字列を持つべきなのかな。
757nobodyさん:2012/04/29(日) 19:19:44.05 ID:???
1分ぐらいの処理を1時間に1回ずつ1週間ずっとやりたいんですが、そういう処理はGAEで出来ますか?

ほかのクラウドサービスを探すのが良いんでしょうか?
758nobodyさん:2012/04/29(日) 23:47:00.36 ID:???
>>757
cronで出来るよ。何をやらせたいかの方が問題だ
759nobodyさん:2012/04/30(月) 11:15:23.60 ID:???
>>756
自前のsessionで辞書を管理してるけどExpandoで動的にエンティティを作ってるよ。
javaにはないのかな?
コレクションが使えるみたいだしこれでいけないか?
760nobodyさん:2012/05/02(水) 00:32:33.27 ID:XvVmSkzn
標準のwebappフレームワークでしばらくいじってるんですが、
実際そこそこのアプリケーション作るとしたときはDjangoなど他のフレームワークで始めた方がいいですか?
例えばセッションとか、リクエストハンドラの前後に共通の処理を加えるとか、
比較的ありふれた内容でも、webappでは意外と手間がかかるかなと感じたんですが・・・。
逆に使い込めばシンプルな分、自由度高い気もしたり。

フレームワークの話はあまり出てないようですが、
やはり外部のフレームワーク選んでますか?
761nobodyさん:2012/05/02(水) 18:53:31.90 ID:???
twitterのほうで
使っているらしき人の発言はたまにみられる
#gaeja
762nobodyさん:2012/05/02(水) 22:53:55.45 ID:7IfG5hXX
Key#getName()は同じkindの中でユニークですか?
763nobodyさん:2012/05/03(木) 19:25:09.91 ID:???
>>762
java?
keyname返すんならユニークじゃね?
764nobodyさん:2012/05/03(木) 20:42:54.96 ID:DuxvjcV4
GAEでGoogleの他サービスの利益を損ねるサービスを作ったら
BANされちゃうのかな?
765764:2012/05/03(木) 20:44:22.89 ID:DuxvjcV4
例えばGmailと競合するメーラーとか作れちゃいそうじゃない?
独禁法も関わってきそう
766nobodyさん:2012/05/03(木) 20:45:33.72 ID:???
出来たら教えてね
767nobodyさん:2012/05/04(金) 23:01:10.23 ID:???
独禁法ってどういう法律か知っててそれ書き込んでるの?
学生さんならしょうがないけど25過ぎてそんな幼稚な発想してるんならもう総てを棄てて山で生活した方がいい
現代社会は向いてない
768nobodyさん:2012/05/05(土) 02:07:23.27 ID:???
作ってみればいい。出来が良ければ買い取ってもらえるかもよー
769nobodyさん:2012/05/05(土) 02:28:29.95 ID:/M1BVZkG
いや独禁法関わってくるでしょう
770nobodyさん:2012/05/05(土) 12:30:26.73 ID:???
GAEって静的なWEBサイトなら制限あるリソース消費しないまま使い続けられるんだな
771nobodyさん:2012/05/05(土) 16:38:05.64 ID:???
ただし結構表示は遅い
772nobodyさん:2012/05/05(土) 21:16:50.31 ID:???
out転送量は引っかかるぞ
773nobodyさん:2012/05/06(日) 10:40:53.31 ID:p1xwNEYE
もしかしてmemcacheとurl fetchは転送量制限を共有してる?
774nobodyさん:2012/05/06(日) 12:23:03.86 ID:???
Quota Details見ろ
775nobodyさん:2012/05/06(日) 14:57:25.32 ID:???
GAE<>クライアント間の転送量が下り1GB制限だから100KB程度のJSなりflashなりホストするだけでも最大1万UUが限界
有料化して月9$払うくらいならさくらVPS借りてnginxでホストした方が早いし安上がりっていう
776nobodyさん:2012/05/06(日) 15:05:01.93 ID:???
でました
自分の技術料手数料その他もろもろコストゼロ円君
777nobodyさん:2012/05/06(日) 15:27:12.46 ID:???
制限ってサービス類のAPI上限か
使わなきゃ引っかからないのは当たり前だな
778nobodyさん:2012/05/06(日) 15:46:24.32 ID:???
いつもの自分安売り君は
実際は技術力のギの字も持たない学生か何かなんだから
そっとしておいておやり

779nobodyさん:2012/05/06(日) 16:08:17.67 ID:???
何このアスペ常駐スレwwww
780nobodyさん:2012/05/07(月) 15:18:36.31 ID:???
>>760
webapp2使ってみろ
781nobodyさん:2012/05/09(水) 07:07:56.20 ID:/5skeFJc
self.requestでremote_addrがとれるけど
remote_addrがdnsと対応付けられていた場合、
それを取得する事は出来ますか?
接続者のIPでドメイン(FQDN)を逆引きしたいって事です。
782nobodyさん:2012/05/09(水) 21:31:15.47 ID:???
783nobodyさん:2012/05/10(木) 01:24:10.01 ID:XTWtcKra
GAEアプリ同士でChannel APIで接続する事は可能ですか?
784783:2012/05/10(木) 01:27:27.86 ID:XTWtcKra
2つのGAEアプリがサーバーサイドで接続するという事です
Python to PythonまたはJava to Javaで
785783:2012/05/10(木) 01:32:23.75 ID:XTWtcKra
公式のドキュメントではクライアント側はJSを前提にしていますが
サーバから送出されるトークンをMemcacheに入れておく事で
複数リクエストにわたってチャンネルを共有できないでしょうか
目的は認証つきの高性能なWEBアプリ連携です
「このアプリからしか接続を認めない」というアプリがあったとして、
毎回HTTPSでパスワードを送信させるのは性能が悪くなるので、
1度HTTPS+パスワードで接続させChannel APIのトークンを与えて
それ以降はチャンネルで通信をする、という事を考えています
786nobodyさん:2012/05/10(木) 01:48:03.14 ID:???
高性能な連帯が必要なら同じ鯖で動かせばいいと言われそう
787nobodyさん:2012/05/10(木) 01:59:40.50 ID:XTWtcKra
>>786
同じ鯖というのは、同じアプリでって事ですか?
それも有力ではあるんですが、SaaSみたいな感じで
他人のWEBアプリに組み込んでもらえるような形で提供できないかなと思ったので
アカウント作成済みな人のサーバーに限定できないかと考えてるんです
788nobodyさん:2012/05/10(木) 04:08:41.38 ID:???
一応、こんなの見つけたがurlfetchじゃLong Pollingは無理だろう
Schibum Blog: Using Google Appengine Channel API with a Python Client
http://schibum.blogspot.jp/2011/06/using-google-appengine-channel-api-with.html

XMPPにすれば?
789nobodyさん:2012/05/10(木) 06:10:19.16 ID:XTWtcKra
情報ありがとうございます。
XMPPでも実現できそうです。

あと考えたのは、
app engine url fetch cookie
で検索したところcookieを使えるらしいので、
URL FetchのHTTPSでログインして、
返って来たcookie(ログイン状態)をMemcacheでセーブして複数リクエスト間で使い回せば
通信の大部分はHTTPでいけるんじゃないか、と思うんですが、どうですかね?
790nobodyさん:2012/05/10(木) 08:08:42.47 ID:???
よ!おまえら久しぶり〜!
今日からニートになったからこのスレも活気が戻りそうだな
791nobodyさん:2012/05/10(木) 13:00:00.44 ID:???
jinja2で

import jinja2

templates_path = os.path.join(os.path.dirname(__file__), 'templates')
jinja_environment = jinja2.Environment(loader=jinja2.FileSystemLoader(templates_path))
792nobodyさん:2012/05/10(木) 13:14:37.31 ID:???
jinja2でアプリのルートフォルダ直下にあるtemplatesフォルダのテンプレートを使いたくて

http://snipt.org/ujaq8

のように書きましたが

http://snipt.org/ujas0
>>28. IOError: [Errno 13] file not accessible: '/Users/noa/Developer/GoogleAppsEngine/account/[email protected]/examplewebsite/static/index.html'

のようにアクセルできません的なエラーがでました。
ちなみに、templatesフォルダでなく、アプリのルートにあるテンプレートは問題なく表示できました。
templatesフォルダ内のテンプレートを使用するにはどうすればいいんでしょう??
793nobodyさん:2012/05/10(木) 14:41:35.72 ID:???
>>792
webapp2でjinja2使う場合はwebapp2_extras.jinja2を使うのが良い

app = webapp.WSGIApplication(
[
(r'.*', MainHandler),
],
debug=False,
config={
'webapp2_extras.jinja2': {
'template_path': [テンプレートフォルダパス,],
},}})
こんな感じにパスを渡せる

使い方は\Google\google_appengine\lib\webapp2\webapp2_extras\jinja2.pyに書いてある
794nobodyさん:2012/05/10(木) 14:59:31.75 ID:???
全文検索来たね
795nobodyさん:2012/05/10(木) 15:13:48.36 ID:XTWtcKra
金満企業なのにこういうのがすぐ日本語文書が作成されたり
Java版の文書が作成されたりしないのが意外

ちなみに>>786のMemcacheでセッションを使いまわすというのは成功しました。
796nobodyさん:2012/05/10(木) 15:18:04.66 ID:???
ひがやすをさん、slim3のアップデートまだですか…
せめて最新のgae sdkでも動くかどうかのテストだけでも…
797nobodyさん:2012/05/11(金) 09:17:17.48 ID:tjNJlBi3
URL Fetchで外部サイトにアクセスする際の自分のグローバルIPはどれくらいの頻度で変わるのだろうか
リクエスト毎に違うのか1日1回変わるのか数週間に1回か
わかる人いませんか?
798nobodyさん:2012/05/11(金) 12:42:26.93 ID:???
>>797
リクエスト毎に変わる可能性があるとしか…
厳密に知りたければ中の人に聞けば?
799nobodyさん:2012/05/14(月) 07:34:41.37 ID:???
>>761
GAE関連のハッシュタグが#gaejaってどうやって知ったの?
どっかに効率よく調べられるサイトあります?
800nobodyさん:2012/05/14(月) 07:46:01.00 ID:???
761じゃないけど以前は#gaeを使っていたんだが、どこぞのフットボールチームと
かぶるので#gaejaに変えようってことになった。日本以外では#appengineが使われている
801nobodyさん:2012/05/14(月) 08:25:17.64 ID:???
>>800
なるほど、そんな経緯があったんですね。
使用するハッシュタグの情報はどうやって知ったんですか?
802nobodyさん:2012/05/14(月) 09:22:56.58 ID:???
"app engine"でtwitter検索
803nobodyさん:2012/05/14(月) 09:49:58.84 ID:???
ちょっと上に名前挙がってるけど
GAE関連のフレームワーク作っている人が、
今度から日本人用GAEのハッシュタグに「#gaeja」を使いましょう、と提案し
皆がそれに続いた感じ
804nobodyさん:2012/05/14(月) 12:45:48.03 ID:???
デプロイ 問題ない?

連続して失敗するんだけど・・・
805nobodyさん:2012/05/14(月) 13:12:51.64 ID:???
ロールバックしたら直った ごめん
806nobodyさん:2012/05/14(月) 17:52:13.95 ID:G5bpTIUz
GAEの、Google側が守るポリシーってどこに書いてありますか?
Googleがアップされたコードをリバースエンジニアリングしてパクる事があるのかどうかが知りたい。

そういう気が無いなら普通はポリシーに書くと思う。
最近のGoogleのポリシーに関する流れからして不安です。

恐らく、フェアユースの4つの判断基準からして、
リバースエンジニアリングしてパクったら米国でも違法なんだけど、
それでもポリシーに書いて欲しい。
807nobodyさん:2012/05/14(月) 18:08:19.39 ID:???
自分で探せ
808nobodyさん:2012/05/15(火) 04:12:18.25 ID:???
パクられるから使わないほうがいいよwwww
809nobodyさん:2012/05/15(火) 15:37:36.17 ID:???
https://developers.google.com/appengine/docs/java/memcache/overview?hl=ja
CacheManager.getInstance().getCacheFactory().createCache(Collections.emptyMap());
この行の意味はなんですか?
参照のたびにcreateCacheが呼び出されるのは正しいんですか?
810nobodyさん:2012/05/15(火) 16:17:13.86 ID:???
ユニークキーにid()を使ってるんですが、桁が増えるスピード早すぎません?
体感的にインクリメントの10倍くらいのスピードで増えてる気がする
811nobodyさん:2012/05/15(火) 16:26:45.84 ID:???
>>793
ありがとうございます。実は質問した時もwebapp2_extrasはテストしていたけど失敗してました。
1回プロジェクトを削除したらうまくいくようになりました。
812nobodyさん:2012/05/15(火) 17:23:03.18 ID:???
質問です。
下記のサイトでIPアドレスから国名を取得する方法を提供しています。

ttp://code.google.com/p/python-geoip/

GeoIP.dat というIPアドレスと国名の対応情報が格納されたDB的バイナリファイル
を使ってIPアドレスから国名を取得しているのですが、
このDB的なバイナリファイルはどうやって作るんでしょうか??
813nobodyさん:2012/05/15(火) 17:58:52.21 ID:???
そのページにリンクがある
814nobodyさん:2012/05/15(火) 20:38:16.91 ID:???
815nobodyさん:2012/05/16(水) 12:14:06.64 ID:???
全文検索使ってみた人いる?なんか思ったより検索文字ヒットしなくね?
816nobodyさん:2012/05/18(金) 21:02:43.71 ID:???
全文検索てngram?
817nobodyさん:2012/05/20(日) 03:14:30.25 ID:???
818nobodyさん:2012/05/28(月) 10:15:03.87 ID:???
cronをいっぱい仕掛けるとタスクが混んで新しいスレッドが立ち上がってしまったり応答が遅くなったりするので
毎時何分にそれぞれズラして起動したいのですが、そういう指定ってできますでしょうか?
819nobodyさん:2012/05/28(月) 10:19:02.40 ID:???
820nobodyさん:2012/05/28(月) 10:43:38.96 ID:???
同一スレに答えが書いてあるとは orz
821nobodyさん:2012/05/28(月) 10:44:53.53 ID:???
同一スレに答えが書いてあるとは orz
ごめんなさい
822nobodyさん:2012/05/31(木) 15:22:00.58 ID:mdpT8+st
j
823nobodyさん:2012/06/01(金) 19:12:50.98 ID:???
blobstore は画像だけではなくfiles api など使えばどんなデータも保存できますが
JSONデータの一時保存に使おうと思うと直接ダウンロードできるURLを取得する get_serving_urlがエラーを起こします。
image api だから当然かと思うのですが、どこかでblobkeyからURLを生成するのを見た気がするのですが
ご存知ではありませんか?
824nobodyさん:2012/06/01(金) 20:45:01.89 ID:???
DSのBlobPropertyでいいじゃない
ndbならJsonPropertyもある
825nobodyさん:2012/06/02(土) 09:05:34.75 ID:???
容量をめいっぱい確保しておきたいのとトラフィックを節約できるのでできればblobstoreサーバーにリダイレクトしたいのです
826nobodyさん:2012/06/02(土) 10:45:36.42 ID:???
ちょっと調べましたがdatastoreのkeyを生成する方法しかありませんでした
勘違いだったみたいです
827nobodyさん:2012/06/03(日) 16:27:55.72 ID:???
Built-in IndexesがDataStoreの500MB超を占有していて困ってます。
保存してるデータ量からすると異常にも見えるのですが(Entity 170MB に対してIndexes 530MB)
このindexのサイズが正しいのか調べる方法とか、過去のBuilt-in Indexesに対する
事例なんかを知ってたら教えてくれませんか。
1GB未満の利用のまま解決したいのだけど、手がかりになるデータが少なくて困ってます。
828nobodyさん:2012/06/04(月) 22:53:20.82 ID:OLIL9p2L
blobstore って条件付きリクエストに対応していないんだね。
自力で実装したよ。
829827:2012/06/06(水) 20:34:37.04 ID:???
グループに投稿してみました。
解決したらこっちにも原因と対策反映しておきます。
830nobodyさん:2012/06/07(木) 15:36:30.27 ID:???
>>827
Datastore Statistics見れば一つ一つのindexの使用量書いてあるよ
減らすにはindex使わないでkeyアクセスのみで頑張るしか無いね
831nobodyさん:2012/06/12(火) 14:46:21.66 ID:???
今までフロントで動かしてたサービスをバックエンドで動かしたいんですが
要するに今までフロントで動かしてたURLを
mytask = taskqueue.Queue('mintask')
task = taskqueue.Task(url='/front', params={},target="backends")
mytask.add(task)

的なことをやればいいようですが、いままで使ってたGETとPOSTのハンドラにそのまま
パラメータを投げるにはどうしたらいいでしょうか?
params={}の部分に与えるDictをどう作ればスマートか、ということです。
request.POSTの中身をごちょごちょやったのをみたことあるんですが探しても見つからないし
なんかスマートじゃないので
832nobodyさん:2012/06/12(火) 15:10:00.66 ID:???
日本語でおk
フロントエンドをバックエンドにまわしただけなら何も変更する必要はないよね
バックエンドの処理結果をフロントに投げたいってこと?
833nobodyさん:2012/06/12(火) 15:56:03.92 ID:???
バックエンドを起動するためにフロントエンドのリクエストハンドラが必要かと思ったんですが
設定だけでバックエンドで動くリクエストハンドラが作れますか?
834nobodyさん:2012/06/12(火) 16:13:14.17 ID:???
フロントエンドとバックエンドのリクエストハンドラは共通
targetの指定で切り替えるだけ
cronにもtargetが指定できる
835nobodyさん:2012/06/12(火) 17:03:42.17 ID:???
あれ?フロントのリクエストハンドラ内に
mytask = taskqueue.Queue('mintask')
task = taskqueue.Task(url='/front', params={},target="backends")
mytask.add(task)
って書いてバックエンドに渡すんじゃないんですか?

バックエンドに指定したURLにGETで直接バックエンドが動いちゃえばそれでいいです
836nobodyさん:2012/06/12(火) 17:57:39.43 ID:???
わかった。もともとタスクじゃないハンドラのリクエストから
バックエンドでタスクとして起動したいってことか
すでにタスクにしてあるのかと思った。つーか、バックエンド関係ないよね
paramsはエラーチェックとかして普通に渡せばいいよ
直接渡すなら params=dict(request.POST) とかでおkなはず
(webapp使ってないから試してない)
837nobodyさん:2012/06/14(木) 11:53:08.32 ID:???
>>836
dict(request.POST)でためしてみます
伝わる書き方できなくて申し訳なかったです
838nobodyさん:2012/06/19(火) 15:54:42.83 ID:???
送信量のリミットは32Mくらいあったはずだけどうちの場合datastoreから必要なデータ取り出してる間にメモリーオーバーになっちゃう
どうしたらいい?
response.out.writeがバッファかまさず送出してくれてしかもループの中で何度も呼び出せればいいんだけど
そのへんの仕様がわからない
839nobodyさん:2012/06/19(火) 15:56:52.01 ID:???
webappに頼らずに自前で吐けばいい
それでもうまくいくかどうかは試してないので知らない
840nobodyさん:2012/06/19(火) 18:35:41.66 ID:???
うぎゃー 難易度高いよ
841nobodyさん:2012/06/23(土) 14:03:34.45 ID:???
Keyの入ったlistから順次エンティティを取り出してフィルタリング処理をする部分でメモリーエラーが出ます。
chanksizeが大きいと巨大なエンティティを一度に取得してしまいメモリエラーになるのはわかりますが
相当減らしても一向にエラーが収まりません。
あまりに下げすぎると(10以下)今度はタイムアウトが出てしまいます。

一括処理では同じエンティティを500ほど取得しても問題ないこともありまして
もしかしたらほんとにメモリリークをさせているのではないかと疑っています。
下記コードにメモリリークを疑う場所や対処法がありましたらお知恵を貸して
いただけると助かります。

   reskey = []
   chanksize = 100
   listcount = list.count(99999)
   for i in range(0,listcount,chanksize):
   db1 = db.get(list[i:i+chanksize])
   db2 = cls.do_filter(db1, sddb)
   reskey.extend(db2)
842nobodyさん:2012/06/23(土) 22:34:12.49 ID:???
843827:2012/06/25(月) 00:19:11.39 ID:???
>>830
Indexesに表示されてる各Kindのサイズに収まってないから変だなと思ったわけです。

Blobstoreのexperimentalである"Writing Files to the Blobstore"を使ってるのだけど…それについてテストしてみた。
Blobstoreにput/deleteしまくって、そのblobkeyをdatastoreの1EntityにStringList(indexes=False)で格納
  # blobkeyはこんなので取得
  blob_io = files.blobstore.create(mime_type=content_type, _blobinfo_uploaded_filename=img_name)
  with files.open(blob_io, 'a') as f:
    f.write(img_data)
  files.finalize(blob_io)
  blobkey = files.blobstore.get_blob_key(blob_io) # blobkeysというStringListPropertyにappendする
844827:2012/06/25(月) 00:23:02.02 ID:???
数日後に上記Entityのblobkeysを持ってきてblobstore.delete(blobkeys)実行後、全Entity削除してみる。
すると、DashboardのBlobstoreは0MBになってもDatastoreに100MBほどの何かのデータが残ったまま。
あと、Blob Viewerで消したはずの画像ファイルが見れる。これって、こういうことでしょうか。
1) Blobstoreのデータが消えてない
2) Blobstoreのデータは消えているが、>>827で問題にしたIndexのデータが残ってる
自分は2と思っていて、BlobStoreのIndexesが上記blobkeyのdeleteで消えてないのではと推測しています。
そうだとして、どうすればIndexが消えるとかまでは分からんのですけど…。

誰か教えてください…blobstoreのこと…Indexesのこと…Datastoreのこと…。
845nobodyさん:2012/06/30(土) 07:55:41.16 ID:???
GAE1.7リリースされたのになんでレスが無いんだよwwwさすが糞ジャップ
846nobodyさん:2012/06/30(土) 10:03:12.62 ID:???
それよりGoogleがIaaS始めるらしい
847nobodyさん:2012/06/30(土) 10:20:44.14 ID:???
そんなことよりDartのPaaSはよ
848nobodyさん:2012/07/01(日) 15:37:32.66 ID:???
App Engine SSL for Custom Domainsくらいしか目玉無かったけど
それすらSSL使ってない俺には関係なかった
849nobodyさん:2012/07/01(日) 16:37:36.93 ID:???
もしかしてSSL for Custom DomainsでiPhoneのPushも実装できちゃうんでしょうか??
850nobodyさん:2012/07/01(日) 20:52:33.84 ID:???
SSLCustomDomain高すぎ
851nobodyさん:2012/07/10(火) 01:02:29.54 ID:???
やっぱGAEは諦めてEC2とかにいった方がいいのか
slim3の開発も去年から進んでない・・・
852nobodyさん:2012/07/10(火) 01:48:36.03 ID:???
他人任せの無能はとっとと他所に行くといいよ?
853nobodyさん:2012/07/10(火) 01:56:57.11 ID:???
GAEとEC2って全然別物だと思うんだが..
854nobodyさん:2012/07/10(火) 07:46:56.93 ID:???
EC2に対応するのはGoogle Conpute Engineだよね
855nobodyさん:2012/07/10(火) 15:09:26.44 ID:???
また僕の技術料はコストゼロ円君か
856nobodyさん:2012/07/11(水) 03:16:54.43 ID:???
851だが、ちゃんと調べたら作ってるっぽい

 I am going to release slim3 1.0.16 next week.
 JSON problem has been fixed in trunk.
 
 Yasuo Higa

心配させやがってやすお
857nobodyさん:2012/07/11(水) 03:20:42.15 ID:???
しかしGAEのフレームワークに限った話ではないけれど、
使ってるフレームワークが開発中止になったら、それに依存しまくってた場合とかどうなるんだろうか

フレームワークを使わないというのも手なのか

みんなどういう認識なの?
858nobodyさん:2012/07/11(水) 09:07:39.35 ID:???
フレームワーク程度なら何とでもなるかなあ
書き直せばいい
そういうのへの依存ってたかが知れてるというか、すぐに乗り換えられるレベル

本当に重要なロジックの関わるところに対しては安易に外部ライブラリは使わないようにしてる
言語自体の公式な組み込みだけ使って、先行き不透明なサードパーティー製のはなるべく使わない
時には車輪の再発明してでも自分達ででゼロから開発することで将来性と保守性を担保できるっていうスタンス
この辺は人・企業によって考え方がかなり違うので一概に正解って無いと思う
859nobodyさん:2012/07/12(木) 12:41:14.67 ID:???
>>852 >>853
いい加減GAEに夢見るのは諦めたほうがいいと思うよ?
860nobodyさん:2012/07/13(金) 12:59:40.66 ID:???
urlfetch→DataStoreWriteってだけのコードなんだけど、
同じコード・設定一緒・同じアカウントなのに、アプリ(置く場所)によって速度が違う・・・
最初TaskQueueおっせーwとか思ってたら違うアプリ名の場所に置いたら爆速
これって仕様ですかね?
861nobodyさん:2012/07/19(木) 12:26:17.48 ID:???
GAEはもういいからDartのPaaSはよ
862nobodyさん:2012/07/25(水) 18:43:33.33 ID:???
なぜDart
クライアントサイドだろ
nodeとかの上で動かすんじゃ、あんまり意味ないしな
863nobodyさん:2012/07/25(水) 20:18:57.30 ID:???
Dartはサーバサイドも視野に入れてるのが売りの一つなんだけど
864nobodyさん:2012/07/26(木) 00:40:32.26 ID:???
DartやるにしてもGAEでいいんじゃ
865nobodyさん:2012/09/01(土) 20:18:24.01 ID:0FcFAh+r
GAE は糞
866nobodyさん:2012/09/06(木) 14:19:49.93 ID:???
いつの間にか1.7.1がリリースされてんじゃねえか
867nobodyさん:2012/09/08(土) 00:42:48.27 ID:???
書き込みが激減してるな
完全に終わったのか
868nobodyさん:2012/09/13(木) 14:27:59.65 ID:???
契約があるから5つ管理してるけど
増やそうって気にならないな
料金だけでもメリット出してくれたらいいのにな
869nobodyさん:2012/09/20(木) 18:18:57.08 ID:???
料金そんなにダメなの?
EC2なんかに比べるとさすがに安かろう?
870nobodyさん:2012/09/20(木) 18:45:55.13 ID:???
ダメってほどのことはないけど
やっぱコスト抑えたくなるじゃん?
そこで儲けが決まるから

プログラミングがそんなことばっかで
建設的なことがやれなくなるのがダメやん?
871nobodyさん:2012/09/20(木) 19:33:30.01 ID:???
無限スケールを何もせず手に入れられるってのも時間的コストは激減すると思う

EC2だといくらボタンひとつでスケールするとは言っても、
DBのレコードが増えるとMySQLのチューニングが必要だったり、
NoSQLでやるにしてもその知識が必要だったりする

GAEが人気無いのは、単純にGAE的なメリットが活かされるようなアプリを作る人が少ないからだと思う
872nobodyさん:2012/09/24(月) 19:14:58.36 ID:PjuCm/UC
今北
とりあえずPython版から始めてみよう
873nobodyさん:2012/09/24(月) 23:34:09.33 ID:???
ようこそ
874nobodyさん:2012/09/25(火) 02:01:17.56 ID:yXRlmANa
DSの読み書きコストがきつすぎる
コスト削減のためにインデックス増やさないよう、
ひたすらトリッキーなコード組んでくとか糞すぎるわ。
拡張性もクソもない
875nobodyさん:2012/09/25(火) 15:25:02.30 ID:???
いまさらだけど、脱M/Sでidに-hdr付ける移行方法って、作れるapp数を圧迫しちゃうの?

hdr化して元のIDに戻すのは無理っぽいって結論になったんだけど、それでOK?
876nobodyさん:2012/09/27(木) 09:49:16.64 ID:???
>>874
まったくそうだよ
最適化をしないとコストが高くなりすぎるのはソリューションの問題だろう
877nobodyさん:2012/09/27(木) 09:49:52.79 ID:???
ところでN/S廃止決まったの?
最近あちこちで移行の話題見るけど
878nobodyさん:2012/09/27(木) 13:18:55.92 ID:???
>>877
あちこちってどこ?
879nobodyさん:2012/10/01(月) 10:58:27.60 ID:???
pythonで非同期処理書いても1インスタンスで動かしたら結局逐次実行なの?
880nobodyさん:2012/10/02(火) 10:28:00.93 ID:???
個人でiphoneアプリ、Windowsアプリをマーケットに売って生き残れ

経済産業省は若者らの小規模な起業を促すため 数百万円を補助
http://matome.naver.jp/odai/2134667637844882401

格安iPhoneEラーニング(学習動画多数あり)
http://tinyurl.com/7wj77om

コワーキング帳
http://tinyurl.com/brzs486
コワーキングスペースJP
http://tinyurl.com/76vdrny

WEBサーバーIIS Win2008ServerVPS SqlServer Oracle MySql 言語はマーケットで売れるメーカー製のみやる
ASP.net(C#)+管理EXEアプリ(C#)+iPhone C#のソースを出さなければWEBアプリの著作権も守れる

C#マーケット Windows8 Metroアプリ WindowsPhone Surface PS Vita Xbox360 iphone(mono使用)
iPhoneマーケット iPhone iPad 予定 iTv iCar i (家電製品)

地方に安い土地を買いコンテナ型の格安高性能オフィスを建て(300万〜500万)
レンタル自習室&シェアオフィス・コワーキングで収入を得ながらそこでアプリを開発する
http://tinyurl.com/7pb2yaa
http://bit.ly/iLIpJa
ヤフオクで脱獄iPhone15kぐらいで買える IIJmio,イオン.BB.exite,DTIで月千円ぐらいでネット使える
881nobodyさん:2012/10/17(水) 17:21:59.06 ID:???
なにこの糞スレ
882nobodyさん:2012/11/05(月) 03:57:26.61 ID:pM9J2Xt4
W
883nobodyさん:2012/11/15(木) 19:19:33.58 ID:???
Cloud SQLの無料トライアルはどうよ?
884nobodyさん:2012/11/16(金) 17:56:13.38 ID:py0Lb2ER
今ってファイル数3000って制限ないよな?
885nobodyさん:2012/11/16(金) 18:19:32.67 ID:???
えっ まじで?
886nobodyさん:2012/11/16(金) 18:54:53.61 ID:???
これか
Version 1.5.5 - October 11, 2011
We have increased the number of files you can upload with your application from 3,000 to 10,000.
887nobodyさん:2012/11/16(金) 18:58:49.35 ID:???
ありあり
888nobodyさん:2012/11/28(水) 13:20:41.59 ID:???
無料枠でデータストアの保存容量の上限は?
889nobodyさん:2012/11/29(木) 13:28:30.38 ID:???
890nobodyさん:2012/11/29(木) 20:11:05.11 ID:???
Googleクラウドコンピュータっていつ使えるようになるの?
891nobodyさん:2012/11/29(木) 21:17:21.29 ID:???
もう使えんじゃないの?
892nobodyさん:2012/12/05(水) 20:25:08.72 ID:???
今更だがGAEは転送量高すぎて、コンテンツの内容によっては全く使い物にならん
893nobodyさん:2012/12/05(水) 20:42:32.08 ID:???
キャッシュでがんばれ
894nobodyさん:2012/12/06(木) 13:05:26.26 ID:YzQjylG6
どんな内容扱ってんの?
バイナリはGCSに置けばいいんだし、S3使ったっていいじゃん。
895nobodyさん:2012/12/10(月) 15:13:08.19 ID:???
APPS 無料枠撤廃

だんだん外堀埋めてくねGが自分から
896nobodyさん:2012/12/10(月) 15:49:55.25 ID:???
APPの文字に反応してこのスレに書いちゃった子がでちゃったよ
897nobodyさん:2012/12/10(月) 15:56:07.31 ID:???
GuidoがDropBox行っちゃったけど影響が出ないといいな
898nobodyさん:2012/12/10(月) 16:12:38.40 ID:???
APPSが有料になると独自ドメイン使いづらいだろ
899nobodyさん:2012/12/10(月) 16:19:29.88 ID:???
>>898
スレ違い。ここはApp EngineのスレでAppsではないよ
【独自ドメイン】 Google Apps【Gmail】
http://toro.2ch.net/test/read.cgi/google/1286118342/
900nobodyさん:2012/12/10(月) 18:02:01.86 ID:KmNmCIRH
Guido! ndbどうすんだよ!
901nobodyさん:2012/12/11(火) 10:17:57.49 ID:???
apps で独自ドメインメール使ってたんだけど
やばいよね
もう潮時かな
902nobodyさん:2012/12/11(火) 10:26:40.85 ID:niOohGMF
GvRが去った今となってはGAEも安全地帯ではない。
903nobodyさん:2012/12/11(火) 10:32:26.79 ID:???
ndbは粗方出来ているからいいが、3kへの対応とかどうするんだろうね
904nobodyさん:2012/12/11(火) 10:55:47.54 ID:???
今使ってる独自ドメイン以外のはもう追加出来ないのか
まんどくせ
905nobodyさん:2012/12/11(火) 11:21:23.00 ID:???
それは大丈夫らしい
http://googlesystem.blogspot.jp/2012/12/google-apps-no-longer-free-for-small.html
Update: Apparently, there's a workaround that lets you use the free version of Google Apps for a single account.
"If you create a new Apps account going through the App Engine Admin Console
you'll still be able to create a Standard Apps account for free
but you'll only be able to get 1 user per account rather than the 10 you get today,"
says Greg D'Alesandre, Senior Product Manager for Google App Engine.
906nobodyさん:2012/12/11(火) 16:03:52.78 ID:???
Azureに無料版が出来るって
907nobodyさん:2012/12/13(木) 14:06:10.08 ID:???
>>905
oh! 情報サンクス!
908892:2012/12/16(日) 20:43:42.00 ID:???
>>894
S3も検討したが、計算したらほとんどGAEと変わらなかった。

ちなみに画像が主体のWebサービスで、今はさくらVPSの1500円で済んでいるのに、
GAEに引っ越すと、転送量だけで5〜7万近くいく試算がでた。
S3は確かに少し安くなったと思うが、それでも1500円と比べるとありえないわー

とはいえGAEのスケールは魅力的だし、BigTable自体のストレージ費は安い
だから、コンテンツをさくらVPS、それ以外をGAEに任せる、っていう構成がおれの中で主流になりつつあるのだ
909nobodyさん:2012/12/17(月) 08:02:03.44 ID:???
ep
910nobodyさん:2012/12/17(月) 10:16:45.96 ID:???
>>908
>ちなみに画像が主体のWebサービスで、今はさくらVPSの1500円で済んでいるのに、
>GAEに引っ越すと、転送量だけで5〜7万近くいく試算がでた。
>S3は確かに少し安くなったと思うが、それでも1500円と比べるとありえないわー

わかるー!
転送量に料金がかかるのは、GAEに限らず海外サーバの欠点だよね。
ほんとはそれが料金体制としては正しいことだとは思うけど。
911nobodyさん:2012/12/17(月) 10:33:04.81 ID:???
また自分の技術力はコストゼロ円君の登場か
912nobodyさん:2012/12/17(月) 13:15:10.39 ID:???
自由なサーバならまだしも制限の多いGAEで技術力で克服とか限界があるだろ

>>910
逆に転送量無料で無制限っていうさくらもありえないわーって感じだけどね
913nobodyさん:2012/12/17(月) 13:46:30.96 ID:EWD5rxbL
いや、それはさくらのVPSの無料の転送量で問題が出ない程度のサービスだからだろ
本気でGAEのスケールが重要になってくるようなサービスなら
ストレージもスケールしてくれなきゃ困るんだから
S3とかGCSとか使うのが当たり前だろ

VPSで充分なものをPaaSに持ってくるのがそもそも間違いだ
914nobodyさん:2012/12/17(月) 14:47:37.60 ID:???
>>913
さくらVPSをN個契約して分散させることも十分可能
しかも一度その分散の仕組みを作ったらさくらVPSを買い足すことで無限にスケール可能

S3とかなら一貫しているので管理や設計しやすいメリットはあるが、
やっぱり転送量考えるとさくらVPSで分散した方が遥かに安い
このメリットは譲れない
915nobodyさん:2012/12/17(月) 17:39:57.55 ID:EWD5rxbL
まあ小さい内は参照と更新の比率次第だわな
あっという間にストレージ使い切る様なサービスなら
VPSの継ぎ足しは馬鹿らしいし管理もクソ
参照主体ならさくらみたいなものでもありはあり

でもそんな細切れストレージに使いたいだけなら
ablenetとかで充分じゃね?なんでそんなにさくら推し?
916nobodyさん:2012/12/17(月) 23:16:32.90 ID:???
もちろん参照主体
まあ十年もしない内に世の中のインフラコストも下がって「馬鹿けた手法」になるんだろうけど

ただ、今のところ自分のように音や画像をふんだんに使うサービスはそういう方法を取らなければ無料で運用することはできない


>なんでそんなにさくら推し?
別にさくらのさくらじゃないよ
転送料無料で無制限で安定してるならどこでもよし
917nobodyさん:2012/12/18(火) 18:29:56.92 ID:???
公式でどっかに事例集まとめてくんねえかな
既存のは古くて話にならん
918sage:2012/12/19(水) 10:37:54.42 ID:GfFb/zFv
Searchの料金体系さっさと出してほしい
919nobodyさん:2012/12/20(木) 16:27:33.33 ID:???
全文検索ってGoogleの検索みたいに使えんの?
日本語のドキュメントが全然ないんで手出しできないよ
920nobodyさん:2012/12/25(火) 12:28:26.43 ID:???
>>919
Google検索よりはしょぼい
あいまい検索とか出来ないし
でもDtastoreだけで出来なかったあれこれが
比較的低コストに叶うっぽう
921nobodyさん:2012/12/28(金) 17:20:12.56 ID:Np5nab0m
ぽう
922nobodyさん:2012/12/29(土) 03:05:05.43 ID:???
「Windows 8アプリは開発しない」――米Google、決断の理由
http://techtarget.itmedia.co.jp/tt/news/1212/28/news01.html
米Googleは、GmailやGoogle Driveといったビジネス向け製品について、
米MicrosoftのWindows 8やWindows Phone 8版のアプリケーションを
開発しない計画であることを明らかにした。
同社は、目覚しい発展を遂げるモバイル市場のニーズに対応すべく、
iOSとAndroid向けのアプリケーション強化に注力する。
923nobodyさん:2012/12/30(日) 07:07:31.09 ID:J1x2YB3i
【社会】googleのgmailアカウント乗っ取り被害続出…勝手に迷惑メール送信
http://uni.2ch.net/test/read.cgi/newsplus/1356743275/
924nobodyさん:2013/01/05(土) 05:49:28.30 ID:???
Flask&GAE&Bootstrapのデモページ、すげーサクサクだな
ttp://gae-init.appspot.com
Slim3でWebアプリ開発しようと思ってたが揺らいできた

ttp://d.hatena.ne.jp/higayasuo/20100319/1268984735
>とても単純なアプリケーションで比較するとPythonのspin-upは100ms以下。
>Javaは1000ms以下。大雑把にいってPythonの方が10倍速いと言えるでしょう。

Slim3の開発者のひがさんもこう言ってるし…
スピンアップ後でもJavaは何かもっさり、Pythonはサクサクという印象がある
925nobodyさん:2013/01/05(土) 09:19:01.99 ID:jXQiYMIw
1日に1億リクエスト捌くようなアプリのバックエンドなら
Javaでインスタンス立ち上げっぱなしの方が
トータルで良い性能が出るはず

小さめのサービスや徐々に育てていくつもりのものは
明らかにPythonの方が向いてると思う
なので俺はPythonを選んだわ
926nobodyさん:2013/01/05(土) 11:21:50.20 ID:???
何でリクエスト大量になると逆転するん?
927nobodyさん:2013/01/05(土) 11:32:59.44 ID:jXQiYMIw
Javaの方がピーク性能が高いから

スピンアップがネックなんであって
AllwaysOnなんか使って温め続けられるなら
Javaの方が性能は良い

でもサービスが小さかったり試行錯誤中は
中々起動しっぱなしにするコストはかけられない
小さく初められるPythonの方が向いてる

サービスが充分に大きくなったらJavaに切り替え
というのがGAEで個人や小さな資本が
でかいサービス狙う場合のベターな方法じゃないかな
Datastore等インフラは共通だし
移行に非現実的なコストが掛かるわけじゃない
まあPythonでも余程の規模じゃなきゃ問題ないと思うけど
928nobodyさん:2013/01/05(土) 11:56:04.02 ID:jXQiYMIw
単純にリクエスト捌くだけとか
オリジナルの画像処理するとか
演算のみの比較ならJavaの方がかなり速い

ちなみにひがさんのコメントにもあるけど
1年半前ぐらいの比較だと単純処理は10倍近い差
でもDatastoreとかUrlFetch使うと
結局大きな差が見られなくなってく
Memcacheでがすがすリクエスト捌いて
TaskQueueでDatastoreに書き込みとかしないと
その速度差が活かせない

Javaで書いててもっさりに感じるとしたら
結局はスピンアップが足引っ張ってるんじゃないかな
一番割安で済むインスタンスの設定とかだと
スピンアップが頻繁に発生するし
929nobodyさん:2013/01/05(土) 14:40:46.66 ID:???
なるほど何となくわかったありがとう
930nobodyさん:2013/01/05(土) 19:09:06.57 ID:???
アプリ起業 iPhone C#まとめ Ver 1.5
http://tinyurl. com/9w97424
931nobodyさん:2013/01/06(日) 10:29:06.73 ID:???
>>930
不正なソフトウェアを事前に検出しました
932nobodyさん:2013/01/08(火) 20:45:35.46 ID:???
pythonでもけっこうスピンアップかかってる感じなんだけど
なにか減らすコツとかってないの?
933nobodyさん:2013/01/09(水) 01:31:52.71 ID:???
外部の監視サービスで決まった時間内にたたいたりすればいいんじゃね
934nobodyさん:2013/01/09(水) 02:05:59.57 ID:???
cronで1分しばきでおk
つかAlwaysOnでいいだろ
935932:2013/01/09(水) 10:38:58.46 ID:???
いや、金無いんでAlwaysOnとか
インスタンス起こしっぱなしはちょっと無理なんだ
せめてpython側の書き方とかオプションとかで
スピンアップにかかる時間減らせないかな?
936nobodyさん:2013/01/09(水) 11:25:01.44 ID:MFA8x2Gu
後者の方が却って金掛かるんじゃね?
937932:2013/01/09(水) 12:26:41.62 ID:???
今の所身内で使ってるだけのアプリなんで
無料枠に収まってるんだ
けどスピンアップが遅くていざ使おうとすると
もたついてイライラする

静的なファイル増やしてAjaxでデータ取って
とかいう方法が良さそうなのは分かるんだけど
pythonの書き方そのものを工夫したら
もうちょっとスピンアップ時間減らせないかなと思ったんだ
938nobodyさん:2013/01/09(水) 12:54:38.31 ID:CFlVPMl1
モジュールの遅延ロードを心がけるのと
単一のmain.pyに何でもぶっこまない
ぐらいかな
939nobodyさん:2013/01/09(水) 13:26:14.59 ID:???
遅延ロードってどうやるの?
mainがいくつももてるの?
940nobodyさん:2013/01/10(木) 19:09:21.86 ID:???
mainはいくつももてる
941nobodyさん:2013/01/10(木) 19:10:27.20 ID:???
ファイルの先頭で何でもかんでも全部importせずに
関数の中とかで必要になったときにimportってことだね
942nobodyさん:2013/01/11(金) 02:31:43.27 ID:???
なんか、そこまで気を使うなら、多少値が張ってももっと汎用性の高いシステムのほうが
いいかなぁ。そりゃスケーラビリティの有利さはあるけど。
943nobodyさん:2013/01/11(金) 12:24:41.08 ID:gLHAc5k8
おいおいこの程度全然「そこまで」じゃないぞ
そもそもGAEが好適なアプリケーションとか規模なら
どんなインフラ使ったって気違いみたいな最適化は要るよ

もちろんPaaSだから下の層触れないって割り切りだし
GAEの限界は色々あるけどさ

今までのノウハウで対応できないだけで
機械部分の管理不要はメリットでかいよ
944nobodyさん:2013/01/11(金) 12:30:53.02 ID:???
禿同
945nobodyさん:2013/01/11(金) 12:59:17.99 ID:6pl5qRPF
>>943
お互いに、どの程度の「スケール」を想定してるかに齟齬があるかも
946nobodyさん:2013/01/11(金) 16:07:57.92 ID:gLHAc5k8
アベレージかピークかどっちかに
その辺のレンタルサーバーじゃ捌くのが面倒な程度
リクエストが来る用途じゃなきゃ
GAEなんか使うメリットないのは当たり前じゃん

機械をカリカリにチューニングする労力を
価値あって稼げる実装に回せや
って状況で生きる代物だろ
汎用性求める時点でおかしいよ
947nobodyさん:2013/01/11(金) 19:28:45.07 ID:???
64万コア使わせて
948nobodyさん:2013/01/11(金) 21:26:44.84 ID:6pl5qRPF
>>946
言語(あるいはAPI)としての汎用性としての話でさ、レンタルサーバのコードがどの程度
使いまわせるかって話の流れだとしたいんだけど、ずれてる?
949nobodyさん:2013/01/11(金) 21:39:39.26 ID:gLHAc5k8
うん、ずれてる
今のGAEの不便さってのはオートスケールのためのもの
サービスをでかく或いは熱く仕立てて
オートスケールのメリットを受けられないアプリは
そもそもGAEに適してないよ

今のとこソーシャルゲームのバックエンドが好適例で
1億リクエスト/dayとか捌く事例が出たりしてるけど
もっとオーソドックスなサービスが育ってくれば
ユーザーの受け取り方も変わると思う
950nobodyさん:2013/01/12(土) 03:29:27.48 ID:KTdWHGw/
>>949
それは、最初からGAE想定してスタートアップするってことになるの?
951nobodyさん:2013/01/12(土) 22:45:39.09 ID:???
GAE最近の動向
http://s.ameblo.jp/cabeat-e/entry-11394475313.html
slim3本
http://www.amazon.co.jp/gp/aw/d/4798026999

上のレスと同じになっちゃうけど
RDB使わずにbigtableの制約に従って設計することで、放置してもスケールするのがGAE。
bigtableでできないことはやらないか、局所的に閉じ込めてスケールしない前提で動かす。

最近はGAEからMySQLなども使えるが、そういうものを中心に使うならGAEである必要性はないと思う。
(bigtableでは無く)MySQL使ってるようなソーシャルゲーム運営などはAWSでミニマムスタートしても、当たりそうであればレスポンス命になって、データベースまわりにRAID0-SSDやIBを使いデータセンターはIX直通と環境移すことが必要になるので、移植性が大切だったりする。
952nobodyさん:2013/01/12(土) 23:30:55.34 ID:???
あえて抜けしてるんだろうけど
無料枠があるのも魅力の一つ
953nobodyさん:2013/01/13(日) 01:16:59.55 ID:Y3d4fqdG
2012年のGoogle IOで
versionごとにサーバーの設定ができるようにしたいって言ってたけど、
あれから進展あんのかな?
954nobodyさん:2013/01/13(日) 10:43:29.83 ID:???
GoogleAppsも新規無料枠無くなったしな
GAEがそうなるのも時間の問題
955nobodyさん:2013/01/13(日) 18:40:56.36 ID:???
涙拭けよAWS厨
956nobodyさん:2013/01/17(木) 12:48:33.46 ID:???
誰かスレッドセーフについて教えてください

2.7以降に単一のインスタンスがスレッドを捌けるようになった
その恩恵を受けるにはapp.yamlにthreadsafe: trueを指定
そしてthreadingモジュールも使えるようになったので
それを使ってスレッドを制御しなさい

こんな認識でいるんですがGAEから本格的なプログラミング始めたばかりで
スレッドセーフとは何なのかはっきりつかめていません
例えばwebappとdbを使って一般的なアプリケーションを書くとして
どういう箇所が非スレッドセーフになりうるんでしょうか

ぼんやりした理解としてはmutableなオブジェクトが
グローバルやクラスに存在すると駄目?程度です
ヒントだけでも構いませんのでお願いします
957nobodyさん:2013/01/17(木) 13:29:53.64 ID:EsHQfGhD
俺も知りたい
958nobodyさん:2013/01/17(木) 15:00:14.80 ID:???
え、マルチスレッドって自動対応じゃないの?
threadsafeじゃないとどうなんの?
959nobodyさん:2013/01/17(木) 16:10:33.90 ID:???
1インスタンスで1つのリクエストしか同時に処理できない
960nobodyさん:2013/01/17(木) 16:25:44.44 ID:???
意識したことないけど俺も知っときたい
運用はまだ2.5でやってるから関係ないけど
961nobodyさん:2013/01/17(木) 16:40:43.53 ID:???
君たちフレームワークは何つかってるの?

Django?
webapp2?
Kay Framework?
Flask?

どれがオススメかな
Flaskが良さげなんだが日本語の参考サイトがちょっと足りない
962nobodyさん:2013/01/17(木) 17:12:24.33 ID:???
werkzeug
963nobodyさん:2013/01/17(木) 17:18:42.74 ID:???
Flask
964nobodyさん:2013/01/17(木) 17:55:19.40 ID:IKfy6gSY
Google謹製のwebapp2が軽くていいや
965nobodyさん:2013/01/17(木) 18:08:21.07 ID:???
web2pyってGAE的にはどうなんかな
966nobodyさん:2013/01/17(木) 18:19:11.98 ID:???
標準のwebapp2で今のとこ充分
多少の不満は手入れできるし
appengineメインで設計されてるんで楽だし
967nobodyさん:2013/01/17(木) 18:59:33.57 ID:???
フレームワークなんて雨後の筍のように出てきてすぐに廃れていくんだから、学習コスト
が無駄すぎる

枯れてる生に近いやつ選べ
968nobodyさん:2013/01/17(木) 19:27:35.17 ID:???
おれもwebapp2だな
レンダリングだけDjango
969961:2013/01/17(木) 19:49:45.75 ID:???
なるほど、参考になった
webapp2で良さそうだな
ルーティングめんどくさいけど、javaのweb.xmlでマッピング設定情報をXMLでシコシコ書き込むよりはマシだろう

ちなみにこれをFlaskで実装しようとしたがワケワカメで挫折した
tp://localhost:8080/image
キャプチャ認証に使えそうなテキスト文字画像を出力する処理ね
(Arial.ttfはスクリプトファイルと同じ場所にファイル持ってきて置く)

import webapp2
from PIL import Image, ImageDraw, ImageFont

class ImageCreater(webapp2.RequestHandler):
def get(self):
color = "green"
text = "AhsAA"
canvas = Image.new('RGB', (80,40), color)
font = ImageFont.truetype("Arial.ttf", 20)
draw = ImageDraw.Draw(canvas)
draw.text((10,10), text, font=font)
self.response.headers["Content-Type"] = "image/png"
canvas.save(self.response.out, "PNG")

app = webapp2.WSGIApplication([
('/image', ImageCreater)
], debug=True)
970nobodyさん:2013/01/17(木) 21:07:06.49 ID:???
# Flaskで書くとこんな感じ
from flask import Flask, Response
from PIL import Image, ImageDraw, ImageFont

app = Flask(__name__)

@app.route('/image')
def image_creator():
  color = "green"
  text = "AhsAA"
  canvas = Image.new('RGB', (80,40), color)
  font = ImageFont.truetype("Arial.ttf", 20)
  draw = ImageDraw.Draw(canvas)
  draw.text((10,10), text, font=font)
  res = Response(mimetype='image/png')
  canvas.save(res.stream, "PNG")
  return res
971961:2013/01/17(木) 21:34:40.90 ID:???
>>970

ありがとう
972nobodyさん:2013/01/18(金) 09:05:01.27 ID:d9ZkYgTb
スレッドセーフは?
973966:2013/01/18(金) 10:27:21.28 ID:???
>>969
webapp2はルーティング面倒かな
Routesに並べてもいいしFlaskみたいなSinatraライクも可能
Routesには文字列で渡しておいて遅延importも可能
結構柔軟で良いんだけど
974nobodyさん:2013/01/18(金) 13:10:05.82 ID:???
webapp2でモデルとかハンドラとか
どういうモジュールにしていったらいいのか
わかんねーよーたすけて
975nobodyさん:2013/01/18(金) 16:01:56.27 ID:???
>>974
Flaskで言うと
http://a2c.bitbucket.org/flask/patterns/packages.html
こういうことをやりたいのかな?
976nobodyさん:2013/01/18(金) 16:13:53.51 ID:???
MVCをきっちりフォルダ分け(※)してるWebアプリケーションフレームワークの経験あると
1コントローラー1ファイル、1モデル定義1ファイルで分けたくなるよね
webapp2はそこらへんを詳しく説明する資料少ないかもしれん
俺も色々ググってるうちに上のFlaskの資料を見つけて
「webapp2じゃなくてFlaskでいいか」となったw


myapp/
 controller/
 view/
 model/
977nobodyさん:2013/01/18(金) 18:49:32.93 ID:???
>>975
Moduleは廃止されてBlueprintに置き換わった
http://flask.pocoo.org/docs/blueprints/
978nobodyさん:2013/01/18(金) 20:15:29.49 ID:???
>>977
>>974に関連する質問だけど、webapp2にはこういう機能ないのかな
979nobodyさん:2013/01/19(土) 02:50:41.71 ID:2VybpXiQ
カテゴリごとにハンドラクラスをつくって、
Routesの仕組みを使って
ハンドラクラスの中の関数をよぶみたいな感じじゃいかんの?
980nobodyさん:2013/01/19(土) 10:03:08.40 ID:???
いいよ〜
いいよ〜
981nobodyさん:2013/01/19(土) 11:46:53.52 ID:???
こんな感じでええんとちゃうん?
project/
 controller/ ←これを作成
  __init__.py ←この名前の空ファイルも作成
  foo.py ←適当なハンドラ
  bar.py ←適当なハンドラ
 app.yaml
 main.py
982nobodyさん:2013/01/19(土) 11:47:51.98 ID:???
#######################
main.py
#######################
import webapp2
from controller import *

app = webapp2.WSGIApplication([
("/foo", foo.fooHandler),
("/bar", bar.barHandler)
], debug=True)
#######################
controller/__init__.py
#######################
import os

handlers = []
except_list = ["__init__.py"]

for filename in os.listdir("controller"):
if filename.endswith(".py"):
if filename not in except_list:
handlers.append(filename.rstrip(".py"))

__all__ = handlers
#######################
983nobodyさん:2013/01/19(土) 11:50:57.24 ID:???
インデント崩れた; 適当に直しておいて
あとFooHandlerだったわ 小文字→大文字

##########################
controller/foo.py
##########################
import webapp2

class FooHandler(webapp2.RequestHandler):
 def get(self):
  self.response.out.write("Hello Webapp2!")
##########################
984nobodyさん:2013/01/19(土) 13:00:09.47 ID:???
このスレでコード見るなんて胸熱
985nobodyさん:2013/01/19(土) 13:16:21.58 ID:???
俺はwebapp2でちょっと複雑なのはこんな感じにしてる

apps/
 api/
 back/
  hadlers/
   bar.py
    BooHandler
  templates/
  static/
  main.app
 front/
common/
models/
 baz.py
  Foo
  Bar
  Boo
lib/
app.yaml
986nobodyさん:2013/01/19(土) 13:18:56.36 ID:???
>>982
ルーティングは、
routes = [
 ('/foo/(.*)', 'apps.front.handlers.foo.ShowHandler'),
 ('/foo', 'apps.front.handlers.foo.IndexHandler'),
 ('/', 'apps.front.handlers.index.IndexHandler'),
]
とか文字列で組み立てて、
app = webapp2.WSGIApplication(routes, debug=DEBUG, config=config)
って渡せば遅延ロードになるよ
987nobodyさん:2013/01/19(土) 13:45:11.18 ID:???
>>984
継ぎスレいらないよね
988nobodyさん:2013/01/19(土) 13:51:40.19 ID:???
最近の人気エントリ


Google APP Engine Python入門(2010年2月版)
ttp://d.hatena.ne.jp/kagigotonet/20100209/1265726225
> Google  APP Engineについては初期のころのまとめはあるのですが、Pythonですとリリースからそろそろ2年近くになり内容も大きく様変わりしています。
> 最速マスターシリーズでもGoogle APP Engineについてのまとめが無く、そろそろアップデートの必要があると思いまとめてみました。
>  基本的にwindows環境中心です。


Google App Engineを使って無料でサイトを立ち上げる方法
http://techblog.ecstudio.jp/tech-tips/freewebsite-with-google-app-engine.html
> このGoogle App Engine(以下 GAE)、アプリケーション開発だけでしか使えないと思われがちなのですが、実は設定を工夫すれば通常のHTMLによるサイトを作って運用することも可能です。
> 多少初期設定の手順は複雑ですが、このスペックのサーバーを無料で使用出来ることを考えれば試してみる価値はあるのではないかと思います。
> Webサイトを立ち上げるまでの手順をまとめてみましたので、公開したいと思います。


【特集】Google App Engineで開発するためのフレームワーク × 16 + α
http://coolcoding.com/2010/01/frameworks_for_gae/
> いざGAEで開発をはじめるとしても、素のままで書き始める必要はありません。
> すでに多様なフレームワークが提供されており、そうしたフレームワークを活用することでより素早くGAE上での開発ができるようになります。
> 今回はGAEで開発を行う際にチェックしたいフレームワークを紹介したいと思います。


Google App Engineで開発するスケールするアプリケーション(前編)
http://codezine.jp/article/detail/4591
> 本稿の前編では、主にGoogle App Engineの概要と特徴、そしてWebシステムをスケールするための手法、考え方について説明します。
> 中編・後編では、Google App Engine上で動作する、twitterと連携したアプリケーションを紹介し、Google App Engine上でのアプリケーション構築方法について説明します。
989nobodyさん:2013/01/19(土) 13:52:28.05 ID:???
最近の人気エントリ


Google APP Engine Python入門(2010年2月版)
ttp://d.hatena.ne.jp/kagigotonet/20100209/1265726225
> Google  APP Engineについては初期のころのまとめはあるのですが、Pythonですとリリースからそろそろ2年近くになり内容も大きく様変わりしています。
> 最速マスターシリーズでもGoogle APP Engineについてのまとめが無く、そろそろアップデートの必要があると思いまとめてみました。
>  基本的にwindows環境中心です。


Google App Engineを使って無料でサイトを立ち上げる方法
http://techblog.ecstudio.jp/tech-tips/freewebsite-with-google-app-engine.html
> このGoogle App Engine(以下 GAE)、アプリケーション開発だけでしか使えないと思われがちなのですが、実は設定を工夫すれば通常のHTMLによるサイトを作って運用することも可能です。
> 多少初期設定の手順は複雑ですが、このスペックのサーバーを無料で使用出来ることを考えれば試してみる価値はあるのではないかと思います。
> Webサイトを立ち上げるまでの手順をまとめてみましたので、公開したいと思います。


【特集】Google App Engineで開発するためのフレームワーク × 16 + α
http://coolcoding.com/2010/01/frameworks_for_gae/
> いざGAEで開発をはじめるとしても、素のままで書き始める必要はありません。
> すでに多様なフレームワークが提供されており、そうしたフレームワークを活用することでより素早くGAE上での開発ができるようになります。
> 今回はGAEで開発を行う際にチェックしたいフレームワークを紹介したいと思います。


Google App Engineで開発するスケールするアプリケーション(前編)
http://codezine.jp/article/detail/4591
> 本稿の前編では、主にGoogle App Engineの概要と特徴、そしてWebシステムをスケールするための手法、考え方について説明します。
> 中編・後編では、Google App Engine上で動作する、twitterと連携したアプリケーションを紹介し、Google App Engine上でのアプリケーション構築方法について説明します。
990nobodyさん:2013/01/19(土) 14:00:56.96 ID:???
フレームワーク利用に対するデメリットを書かないフレームワーク紹介記事ほど
迷惑な行為はないもんだ
991nobodyさん:2013/01/19(土) 15:43:30.28 ID:???
次スレ欲しいけどなあ

>>990
自分で構築しない連中が書くんだからしょうがない
このフレームワークのここが嫌い
とかいう個人の感想の方がよほどためになるよね
992nobodyさん:2013/01/19(土) 15:47:45.08 ID:???
もう立ってるよ

Google App Engine for Python 6アプ目
http://kohada.2ch.net/test/read.cgi/php/1358570953/
993nobodyさん:2013/01/19(土) 15:53:18.66 ID:???
>>992
ありがと
でもテンプレふるくさいし浅いね

なんか替わり投げてみる
994nobodyさん:2013/01/19(土) 16:37:06.07 ID:???
ume
995nobodyさん:2013/01/19(土) 18:27:29.23 ID:???
u
996nobodyさん:2013/01/19(土) 18:28:36.74 ID:???
梅の季節
997nobodyさん:2013/01/19(土) 19:36:12.22 ID:???
ume
998nobodyさん:2013/01/20(日) 14:51:07.37 ID:???
ume
999nobodyさん:2013/01/21(月) 04:14:59.58 ID:???
drop
1000nobodyさん:2013/01/21(月) 09:12:17.18 ID:???
うめ
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。