トップページphp
1001コメント218KB

Google App Engine

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/04/10(木) 00:29:02ID:???
Google App Engine
http://code.google.com/appengine/
0574nobodyさん2009/01/14(水) 20:57:41ID:???
自分でインストールしたらいいだけじゃないの?
pure pythonなら大抵動くでしょ
0575nobodyさん2009/01/15(木) 02:53:40ID:sFuWbZ6t
エンティティーグループを使わずに(トランザクションなしで)
同じKindのエンティティーを同時に作成した時、
それはエラーなしで実行されるのでしょうか?
自動で割り振られるidがほぼ連番なので、
id生成はアトミックに行われているような気もするし、
それだとマズいので、バッティングしないid生成を使っているような気もします
0576nobodyさん2009/01/15(木) 03:56:11ID:???
idはダブらないよ
0577nobodyさん2009/01/15(木) 04:07:27ID:???
たしかに、今動いてるアプリ見ると、
1から始まる連番と200から始まる連番が混在してますね
ノードレベルでアトミックなのかなぁ
連番の間隔もっと離れてた方がいいような気も・・
0578nobodyさん2009/01/15(木) 06:11:06ID:???
きちんと連番にするためにidじゃなくて
自前のカウンタを持たせた場合
カウンタをインクリメントするときに
アトミックでないと当然同じ番号になるケースが起こる
カウンタに対してはアトミックなアクセスが必要
0579nobodyさん2009/01/15(木) 08:12:32ID:???
expandoはプロパティーを好きに追加できますが、プロパティー数に制限ありますか?
0580nobodyさん2009/01/15(木) 22:55:14ID:???
http://www.itmedia.co.jp/news/articles/0901/15/news095.html
Google、Google VideoのアップロードやJaikuなど6サービスを終了

gaeで構築してgaeがいきなり終わったら目も当てられないね
0581nobodyさん2009/01/16(金) 05:58:22ID:JXr+7Aan
モデルを操作するメソッドは、モデル自身に実装させていいのですか?
たとえば、incrementなどです
0582nobodyさん2009/01/16(金) 08:14:03ID:???
なんでmemcacheのビューアないの?なめてんの?
0583nobodyさん2009/01/16(金) 12:12:53ID:???
get_stats()
Gets memcache statistics for this application.
All of these statistics may reset due to various transient conditions.
They provide the best information available at the time of being called.

The return value is a dictionary mapping statistic names to associated values.
Statistics and their associated meanings:
hits: Number of cache get requests resulting in a cache hit.
misses: Number of cache get requests resulting in a cache miss.
byte_hits: Sum of bytes transferred on get requests. Rolls over to zero on overflow.
items: Number of key/value pairs in the cache.
bytes: Total size of all items in the cache.
oldest_item_age: How long in seconds since the oldest item in the cache was accessed.
Effectively, this indicates how long a new item will survive in the cache without being accessed.
This is _not_ the amount of time that has elapsed since the item was created.
0584nobodyさん2009/01/16(金) 15:53:33ID:???
>>583
たしかにそれで自分で作ればいいけども
datastoreビューアを用意するならmemcacheビューアがあってもいいじゃん
0585nobodyさん2009/01/16(金) 21:00:05ID:???
いつのまにか機能が増えてるときがあるから気長に待て
0586nobodyさん2009/01/16(金) 22:51:39ID:???
gae管理画面のタイムゾーンが日本時間でないので困ります
日本時間にする方法あれば教えて下さい
0587nobodyさん2009/01/16(金) 23:13:28ID:???
シンプルなエンティティーを3つputするリクエストを繰り返すだけで、
Avg CPUがどんどん上がって赤くなっていくんだけど
1リクエスト中で許されるput数はたった2つ程度?
それでいったい何をしろと・・
0588nobodyさん2009/01/17(土) 06:55:17ID:???
>>586
googleにメール
0589nobodyさん2009/01/17(土) 06:56:25ID:???
>>587
使い方間違ってるかと
0590nobodyさん2009/01/17(土) 18:56:07ID:???
あるモデルを全削除する場合、
all().fetch()してイテレータで回して一つずつ削除するしかないの?
0591nobodyさん2009/01/17(土) 19:33:47ID:???
>>589
cpuタイムが1000ms程度超えるだけで赤くなるね
気にする程のことでもないみたい
05925902009/01/17(土) 20:09:31ID:???
Queryをイテレートでおkでした
0593nobodyさん2009/01/18(日) 03:00:28ID:qAy4grM0
coLinuxにapp engineを入れて、ホストのwinからサイトを見たいのですが、
winからcoLinuxに接続出来ません
サイトは、coLinuxのlynxでは見えます。
lsof -i:8080
で確認すると、
localhost:webcache (LISTEN)
と表示されます。このlocalhostが気になります。
dev_appserverは、ローカル以外にはサイトを公開しないのでしょうか?
0594nobodyさん2009/01/18(日) 03:10:24ID:???
-aオプションで解決しました
0595nobodyさん2009/01/18(日) 05:13:32ID:???
解決おめ
0596nobodyさん2009/01/20(火) 22:55:39ID:???
>>573
App Engine向けのDjango
http://code.google.com/p/app-engine-patch/

色々なものが動くようになってきたので、cronとか要望の高いものをどんどん拡張していってほしい所だな。
0597nobodyさん2009/01/21(水) 00:16:28ID:???
うほっ
0598nobodyさん2009/01/22(木) 09:25:14ID:???
>>596
でもそれ、まだ1.x系には対応してないんだよね?
0599nobodyさん2009/01/24(土) 16:19:59ID:???
>>448
同じ問題で検索してカスタムフィルタで一部分は解決出来ました
ありがとうございました

ただ django の template はなんとも貧弱なのと
{% ifequal hoge fuga|customfilter:param %}
みたいなことしようとしても ifequal の中ではカスタムフィルタが
ちゃんと動いていないみたいなので目的は完全には達成出来ませんでした

{{fuga|customfilter:param}}の結果は期待通り出てるのになぁ
0600nobodyさん2009/01/24(土) 17:59:26ID:v7FoOqq8
結局まだpython以外利用できないんだよね?
ってか今登録できるのは、無料アカウントだけですか?
0601nobodyさん2009/01/25(日) 05:58:05ID:7yBqIDHT
>>600
言語は Python のみ。
登録は無料アカウントのみ。
ストレージは500MBのみ。

制限厳しすぎだな。 > Google
これじゃ流行らないよ。
0602nobodyさん2009/01/25(日) 08:11:11ID:???
アパッチハドゥープでデータストアみたいの作れないのかな?
0603nobodyさん2009/01/25(日) 08:16:25ID:7yBqIDHT
Google App Engine でストレージを購入できるようになったら本格的に使うのに。

今だと、外部のDB/APIサーバー作ってそことコミュニケーションさせるしか道がない。
0604nobodyさん2009/01/25(日) 14:14:22ID:???
>>601
どうなんだろ。

無料の範囲でいい人にはいいだろうし、
そうでない人はVPSとか専用鯖借りるだろうし

Pythonのみというのは確かに致命的だが
06056002009/01/25(日) 22:14:13ID:l1F13FTZ
>>601
あざす!
0606nobodyさん2009/01/26(月) 11:38:31ID:xM4CpIxr
GAEの正式リリースが何時か知ってる人いる?
0607nobodyさん2009/01/26(月) 18:38:36ID:aFYLHCo/
去年の3月だっけ
0608nobodyさん2009/02/01(日) 00:08:18ID:???
googleなんか調子悪いと思ったら今度は派手にぶっ壊れたね
こういうことがあると、gaeで全面的に依存するのもどうなのかと思う
0609nobodyさん2009/02/01(日) 00:45:36ID:???
全面的に依存してたのか・・・
0610nobodyさん2009/02/01(日) 00:58:16ID:???
gae使ったら依存するだろ
0611!omikuji2009/02/01(日) 02:12:22ID:???
!omikuji
0612nobodyさん2009/02/01(日) 07:00:43ID:???
Googleがぶっ壊れた
0613nobodyさん2009/02/01(日) 07:18:16ID:???
NGURLの登録データ間違えてただけらしいね
big tableがぶっ壊れたのかと思った
0614nobodyさん2009/02/01(日) 07:49:01ID:rg7gZ0Rw
さすがGoogle。
段々アホの子になってきたな。
0615nobodyさん2009/02/01(日) 08:50:11ID:???
gmailの検索がやたら重かったり、google readerの一括更新が遅かったりと
最近のgoogleは何か変だ
0616nobodyさん2009/02/01(日) 09:08:45ID:???
>>615
会社は大きくなればなるほど、非効率的で、コミュニケーションが停滞しがちで、
プロダクト間の連携も難しくなり、しまいにはバグが増え、会社自体がアホになってく。

Googleも他と同様、アホの退化への道を辿っているし、
この先ずっとそうなっていくことだろう。

だが心配なかれ。
また別の会社がでてくるから。
こうした創造的破壊は経済の必然プロセスなんだ。
0617nobodyさん2009/02/01(日) 12:53:17ID:jgCOwxDC
>また別の会社がでてくるから。
>こうした創造的破壊は経済の必然プロセスなんだ。

Cloudのようなシステムを本格化するためには、こういう事では
ためだ。安定・長期のシステム稼働が無かったら使いものにならない。
0618nobodyさん2009/02/01(日) 13:24:31ID:???
W.nnyが一番長期のシステム稼働かもな
安定かどうかは知らん
0619nobodyさん2009/02/02(月) 02:00:32ID:enCDFoM0
一つのアプリの異なるURLを、別のドメインにマップすることってできますか?
http://www.hoge.com/ → hoge.appspot.com/hoge/
http://www.hoge1.com/ → hoge.appspot.com/hoge1/
みたいな感じに。
10個しか作れないので、単機能的なミニアプリ作るともったいないです
0620nobodyさん2009/02/02(月) 06:25:12ID:???
アプリの削除機能付かないのかな
0621nobodyさん2009/02/02(月) 06:28:12ID:???
>>619
複数のドメインを一つのアプリに割り当ては出来るから
そのアプリの各URLのところに
どのドメインでアクセスされているかを調べて
それぞれの処理を行うディスパッチャを作れば実現可能
0622nobodyさん2009/02/02(月) 13:33:03ID:???
>>621
なるほど
ありがとうございました
0623nobodyさん2009/02/05(木) 16:54:27ID:???
referenceproperty(a)を持つmodel(A)で
reference先のmodel(B)のproperty(b)の値を条件に
検索を行いたいのですがどうすれば出来ますか?
db.GqlQuery('SELECT * FROM A WHERE a.b=:1', hoge)
みたいな感じで書くとエラーになるようです><
0624nobodyさん2009/02/05(木) 17:16:42ID:865tdHLi
ちょっとまぬけだけどこんなの
ttp://groups.google.co.jp/group/google-app-engine-japan/browse_thread/thread/13dce425a5063bd0#
0625nobodyさん2009/02/05(木) 17:23:03ID:???
whereに a > 1 and b > 2 のように
">" などの条件は2つ以上記述できない。 (1つしかだめ)

', '.join(self.INEQUALITY_OPERATORS))
BadFilterError: BadFilterError: invalid filter: Only one property per query may
have inequality filters (<=, >=, <, >)..
0626nobodyさん2009/02/05(木) 17:27:40ID:???
部分一致検索はできない
w が unicode のとき
q = db.GqlQuery("SELECT * FROM Hoge WHERE fuga>=:1 and fuga<:2", w, w + u"\uFFFD")
w が utf-8 のとき
q = db.GqlQuery(("SELECT * FROM Hoge WHERE fuga>=:1 and fuga<:2", w, w + "\xEF\xBF\xBD").decode("utf-8"))
自動でデコードされるみたいなので
q = db.GqlQuery("SELECT * FROM Hoge WHERE fuga>=:1 and fuga<:2", w, w + "\xEF\xBF\xBD")
でもいいみたい
0627nobodyさん2009/02/05(木) 17:36:32ID:???
使えねーw
0628nobodyさん2009/02/06(金) 23:57:51ID:???
馬鹿には使えないのですね
わかります
0629nobodyさん2009/02/07(土) 04:07:10ID:???
馬鹿しか使わないのです。
全然わかってないですね
0630nobodyさん2009/02/07(土) 07:00:42ID:???
なるほど
ありがとうございました
0631nobodyさん2009/02/07(土) 07:23:13ID:+a2UfnZm
複雑だと思うならつかわなきゃいいんじゃねーの?
なんでアホはあるもの全部使わなきゃ気がすまねーの?
0632nobodyさん2009/02/07(土) 18:47:59ID:???
そういうのの他にも、好きな物(言語とか)を袖にされて怒りで思考が乱れ、
心の平安を得る為に「相手を見下せるキャラ設定を相手にかぶせる」という
手短な方法を選ぶ人も多いね。>>628-631とか。
0633nobodyさん2009/02/07(土) 19:01:16ID:???
632は?
0634nobodyさん2009/02/07(土) 19:25:54ID:???
>>632
ただの痛い子です
0635nobodyさん2009/02/07(土) 20:44:09ID:???
>>632
>>628-632の間違いじゃん。
0636nobodyさん2009/02/07(土) 22:30:53ID:???
キャラ設定をかぶせているが、それほど不当だとは思ってない。

逆にそういうキャラと想定しないと、意見をスルーできずに心の平安を
得られないのもまあおっしゃる通りで、むしろ当然のことだと思ってるぞ。
0637nobodyさん2009/02/07(土) 22:34:12ID:???
ロードマップが更新されたね
メール受信処理とかタスク処理とかなかなか使えそう
0638nobodyさん2009/02/08(日) 11:20:51ID:???
ちなみに以前のロードマップ
http://codezine.jp/article/detail/3233
それによると、今後2四半期(2009年3月まで)で次のような機能追加が行われるという。

* 大容量ファイルのサポート
* 大規模データのインポート・エクスポート
* 有料プランの開始
* 新しい言語サポート
* Uptimeモニタ用サイト

有料サポートは間に合うのか?
新しい言語サポートは無理そうだな・・
0639nobodyさん2009/02/08(日) 23:42:00ID:???
馬鹿にされると(恥ずかしい?)のは馬鹿だからだろ
馬鹿じゃないんだったら馬鹿にされてもいいじゃん
ひとちがいなんだから
0640nobodyさん2009/02/09(月) 13:47:41ID:???
自作モジュールを作ったんだけど、
ImportError: No module named xxxx
というエラーが出るんだけど、モジュールの置く場所って
何か知らせないとダメなの?

hoge/test.py
      /xxxx.py ←今回作ったモジュール

test.pyの中でimport xxxxとやっても読み込めません
0641nobodyさん2009/02/09(月) 16:12:08ID:???
                             |
                             |
      ∩___∩             |
      | ノ  _,  ,_ ヽ        ((  | プラプラ
     /  ●   ● |         (=)
     |    ( _●_)  ミ _ (⌒)   J  ))
    彡、   |∪|  ノ
⊂⌒ヽ /    ヽノ  ヽ /⌒つ
  \ ヽ  /         ヽ /
   \_,,ノ      |、_ノ
0642nobodyさん2009/02/09(月) 16:14:52ID:???
import sys, os
sys.path.append(os.path.dirname(__file__))
06436402009/02/10(火) 10:45:05ID:???
>>642
__init__.py作って、中にその2行足したらできました!!
ありがとうございました

>>641
クマさん かわぃぃ^^
0644nobodyさん2009/02/11(水) 03:33:41ID:???
urllib, urllib2, httplib がそのまま使えるようになったっぽっぽっぽ
>Google App Engine Blog: SDK version 1.1.9 Released
>You can now use the Python standard libraries urllib, urllib2 or httplib to make HTTP requests.
>This has been a frequent request on our issue tracker.
>We've been working on a set of tools that will make the process of uploading and downloading data from App Engine applications easier.
>Today we're excited to announce an early release of our new bulk uploading client.
>You can try it out here. Let us know what you think in our Google Group!
>Several updates to our datastore, including the automatic generation of single property indexes and the addition of IN and != operators to db.Query.
>See the Datastore API docs for more details.
>A bunch of additional bugfixes and enhancements, listed in our Release Notes.
> ttp://googleappengine.blogspot.com/2009/02/sdk-version-119-released.html
0645nobodyさん2009/02/11(水) 04:35:54ID:???
ttp://code.google.com/intl/ja/appengine/docs/python/urlfetch/overview.html
ダウンロードへいくと勝手に日本語サイトに飛ばされて
1.1.0しかダウンロードリストに出てきません
本当にありがとうございました
0646nobodyさん2009/02/11(水) 22:21:42ID:???
今日の日付を取得しようと、
datetime.datetime.today().strftime("%Y/%m/%d %H:%M")
ってやるととんでもない時間が返ってくるんだけど、
日本の時間に設定できないの?
0647nobodyさん2009/02/12(木) 00:45:35ID:???
いまはtimedeltaで+9するしかないみたいですね
そのうちTZに対応してくれるのかも知れないけど
timedeltaで+9するアプリばっかりになると
勝手にTZ対応されるとまた困ったことになりそうだね
0648nobodyさん2009/02/12(木) 01:34:22ID:LTV8fqHE
>>647
やっぱりそうなんだ。
ありがとう

today = datetime.datetime.today() + datetime.timedelta(hours=+9)
print today.strftime("%Y/%m/%d %H:%M")
0649nobodyさん2009/02/12(木) 02:48:51ID:???
+9をmodelとかcontrollerとかでいじると後でやばそうなんで
カスタムフィルタ作ってそこで変換した方がよさそうです
ttp://webdba.blogspot.com/2008/04/google-app-engine-django-template.html
ttp://d.hatena.ne.jp/gonsuzuki/20080831/1220161557
ttp://reiare.net/blog/2008/04/17/utc-to-jtc/
ttp://w00kie.com/2008/06/19/custom-django-filters-in-google-app-engine/
0650nobodyさん2009/02/12(木) 04:53:54ID:0dYkTFC0
memcache がローカルだとうまく動かないのですが
動いているかたはいらっしゃいますか?
0651nobodyさん2009/02/13(金) 17:51:25ID:???
http://googleappengine.blogspot.com/2009/02/skys-almost-limit-high-cpu-is-no-more.html

・No more "High CPU Requests"!
・Response deadline raised to 30 seconds.
・Size limits on code files, static files, and requests/responses raised to 10MB!

有料プランも早く頼むぜ!
0652nobodyさん2009/02/13(金) 17:53:21ID:???
>>650
普通に使えるよ
memcachedといっても通常のmemcachedが動いてるわけじゃなくて
memcachedをエミュレートしてるだけだけど
0653nobodyさん2009/02/13(金) 21:41:20ID:???
>>652
ありがとうございます
memcacheに放り込むデータがテキストとかじゃなくて
オブジェクトそのものを放り込もうとしてたのですが
pickleが無いとかなんとか言われてるんです
0654nobodyさん2009/02/13(金) 21:46:43ID:???
>>651
検索条件に <= > とかを使うとき
一つのプロパティのみしかだめなのがつらい
あとOR使えなくてANDのみだし
そのせいでANDでいくつか条件クロスしようとすると
2^N個のオーダーで爆発的にindexが必要で
indices quota に引っかかってアプリケーション使えなくなったしw
0655nobodyさん2009/02/13(金) 22:59:09ID:???
>>651
cron機能は早くほしいなぁ。

あと、サーバを日本に置いてくれないかな・・・
アクセスすると最初に表示されるの若干遅くない?
あまり皆は気にしてないのかな
0656nobodyさん2009/02/13(金) 23:05:51ID:???
最初のアクセスではコンパイルされるから遅いんじゃ?
0657nobodyさん2009/02/14(土) 08:52:40ID:N5ClWwf+
>>651
それいつから?
ただの希望?
0658nobodyさん2009/02/14(土) 08:53:49ID:???
なんで中の人が希望をブログに書くんだよw
0659nobodyさん2009/02/14(土) 11:20:50ID:???
>>657
実施済み
0660nobodyさん2009/02/14(土) 11:31:42ID:???
つーか>>651の変更なんてショボいもんじゃん。
ファイルサイズの制限はいいから、全体のストレージのリミットを大きくしろと。
0661nobodyさん2009/02/14(土) 13:20:46ID:???
>>655
それはブラウザにキャッシュがないからではないでさうか?
0662nobodyさん2009/02/14(土) 13:31:39ID:???
>>656
ローカルでテストしたものをuploadしたら
pycも一緒にあがると思うんだ
0663nobodyさん2009/02/15(日) 11:13:54ID:d/9tGzsZ
・No more "High CPU Requests"!
・Response deadline raised to 30 seconds.
・Size limits on code files, static files, and requests/responses raised to 10MB!

1000 件以上データぶっこんでるんだけど
30 sec でも足りないや
0664nobodyさん2009/02/15(日) 11:25:06ID:???
>>654
漏れはその制限に気付いた時点で使うのやめたよ
おもちゃ以下だ
0665nobodyさん2009/02/17(火) 19:14:43ID:???
GAEからAmazon Web Serviceを使って商品の検索とかできるのかな?

0666nobodyさん2009/02/17(火) 20:12:34ID:???
Googleはユーザーをナメてんのか?
まじで最悪だ。
0667nobodyさん2009/02/17(火) 22:55:14ID:???
>>666
何が?
0668nobodyさん2009/02/17(火) 22:55:57ID:???
>>665
RESTだからOK
06696652009/02/18(水) 08:39:22ID:???
>サンキュ
0670nobodyさん2009/02/18(水) 17:46:02ID:???
Gmail の API で libgmailer というのがあるようですが
これを Python で wrap したモジュールみたいなものはありますか?
0671nobodyさん2009/02/18(水) 17:46:54ID:???
PHPのなら
ttp://gmail-lite.sourceforge.net/wordpress/index.php/about/libgmailer/
ttp://gmail-lite.sourceforge.net/wordpress/docs/0.8.0/GMailer/GMailer.html
0672nobodyさん2009/02/19(木) 22:24:39ID:WEE3ivzL
Memcache API Calls 39 of 8640000
Data Sent to API 0.00 of 10.00 Gbytes
Data Received from API 0.00 of 50.00 Gbytes
0673nobodyさん2009/02/20(金) 20:27:28ID:???
ttp://www19.atwiki.jp/googleappengine/pages/15.html
■ このスレッドは過去ログ倉庫に格納されています