Google App Engine for Python 6アプ目

このエントリーをはてなブックマークに追加
1nobodyさん
2nobodyさん:2013/01/19(土) 13:50:08.87 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さん:2013/01/19(土) 13:55:36.31 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上でのアプリケーション構築方法について説明します。
4nobodyさん:2013/01/19(土) 13:56:48.96 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]というドメインでアクセスすることができます。
> また、これとは別に独自ドメインをアプリケーションに割り当てることもできます。
> 独自ドメインを割り当てる方法は知っていないと嵌りやすいので手順を書いておきます。
5nobodyさん:2013/01/19(土) 13:59:59.05 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
6nobodyさん:2013/01/19(土) 14:01:41.70 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

gaesynkit - Google App Engine Datastore/Client Storage Synchronization
ttp://www.reddit.com/r/AppEngine/comments/gspqf/gaesynkit_google_app_engine_datastoreclient/
7nobodyさん:2013/01/19(土) 16:29:37.61 ID:???
2013-01時点でそう古臭くないリソース

公式色々

Google App Engine Blog
http://googleappengine.blogspot.jp/

Developer Insights: Building scalable social games on App Engine
(15,000over/sec Query = 1億/day!!)
http://googleappengine.blogspot.jp/2012/10/building-scalable-social-games-on-app_18.html

Google Developers Blog: app engine
http://googledevelopers.blogspot.jp/search/label/app%20engine

Google Japan Developer Relations Blog: app engine
http://googledevjp.blogspot.jp/search/label/app%20engine

Google App Engine System Status
http://code.google.com/status/appengine
8nobodyさん:2013/01/19(土) 18:16:42.57 ID:???
>1 >7 乙
リンク切れ多いね
9nobodyさん:2013/01/20(日) 02:13:34.14 ID:C32f/H3H
いちょつ
10nobodyさん:2013/01/21(月) 09:11:38.80 ID:???
さんくす
11nobodyさん:2013/01/21(月) 11:44:47.70 ID:???
1じゃないけどテンプレ作りなおしてみた

Google App Engine 日本語公式
https://developers.google.com/appengine/?hl=ja

■過去スレ
Google App Engine
http://pc11.2ch.net/test/read.cgi/php/1207754942/
Google App Engine 2アプ目
http://pc11.2ch.net/test/read.cgi/php/1243654802/
Google AppEngine 3アプ目
http://hibari.2ch.net/test/read.cgi/php/1267057923/
Google App Engine 3アプ目 (実質4)
http://kohada.2ch.net/test/read.cgi/php/1267094290/
Google App Engine for Python 4アプ目 (実質5)
http://kohada.2ch.net/test/read.cgi/php/1302598469/

■公式ドキュメント
App Engine Python(日本語・色々古い)
https://developers.google.com/appengine/docs/python/overview?hl=ja
App Engine Python(英語・情報が最新)
https://developers.google.com/appengine/docs/python/overview?hl=en
12nobodyさん:2013/01/21(月) 11:46:49.03 ID:???
■稼働状況
Google App Engine System Status
http://code.google.com/status/appengine
Google App Engine Python Status
http://code.google.com/status/appengine/detail/serving/2013/01/20#ae-trust-detail-helloworld-get-latency

■公式ブログ
Google App Engine Blog
http://googleappengine.blogspot.jp/
Google Developers Blog: app engine
http://googledevelopers.blogspot.jp/search/label/app%20engine
Google Japan Developer Relations Blog: app engine
http://googledevjp.blogspot.jp/search/label/app%20engine

■フォーラム・SNS
Google-App-Engine-Japan - Google グループ
https://groups.google.com/forum/?hl=ja&fromgroups#!forum/google-app-engine-japan
Twitter / 検索 - #gaeja
https://twitter.com/search?q=%23gaeja
13nobodyさん:2013/01/21(月) 11:47:52.32 ID:???
おつおつ
14nobodyさん:2013/01/21(月) 11:54:18.01 ID:???
■NDB
The Python NDB API(公式ドキュメント・英語)
https://developers.google.com/appengine/docs/python/ndb/
NDB Cheat Sheet(GvR・英語)
https://docs.google.com/document/d/1AefylbadN456_Z7BZOpZEXDq8cR8LYu7QgI7bt5V0Iw/edit
NDBの紹介プレゼン
https://docs.google.com/presentation/d/1itvvB_sVJSH30cR479PSeaHjnVDMvy3KNr9R_G5-MEs/edit#slide=id.p

■Search
Search(公式ドキュメント・英語)
https://developers.google.com/appengine/docs/python/search/
Full Text Search の概要と使い方
https://docs.google.com/presentation/d/1mMNENPbdjsNiJtVlK71zc9hV-hXXtwZah_qfaLzSzd0/edit#slide=id.p16
App Engine Full-text Search API の使いどころ
http://shin1o.blogspot.jp/2012/09/app-engine-full-text-search-api.html
[GAE/P]フルテキストサーチサンプル[Python 2.7]
http://python.doorblog.jp/archives/18710725.html

■webapp2
webapp2 v2.5.1 documentation(公式ドキュメント・英語)
http://webapp-improved.appspot.com/
(オフィシャルサイトの日本語訳)スタートガイド:webapp2フレームワークの説明
http://nasubikawahara.wordpress.com/2012/12/31/%E3%82%AA%E3%83%95%E3%82%A3%E3%82%B7%E3%83%A3%E3%83%AB%E3%82%B5%E3%82%A4%E3%83%88%E3%81%AE%E6%97%A5%E6%9C%AC%E8%AA%9E%E8%A8%B3%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%88%E3%82%AC%E3%82%A4%E3%83%89%EF%BC%9A-4/
GAEでPython2.7を使ってthreadsafeを有効にする
http://d.hatena.ne.jp/eth0jp/20111102/1320235680
15nobodyさん:2013/01/21(月) 11:54:51.37 ID:???
■事例紹介
サービス | 株式会社CA Beat
http://www.cabeat.co.jp/service
海外展開も好調なアプリボット、Google App Engineによってインフラを考えずに済む開発体制に
http://www.gamebusiness.jp/article.php?id=7253
Developer Insights: Building scalable social games on App Engine(15,000over/sec Query = 1億/day!!)
http://googleappengine.blogspot.jp/2012/10/building-scalable-social-games-on-app_18.html

事例は、最近ので良いのがあったら教えて
16nobodyさん:2013/01/21(月) 11:55:41.04 ID:???
■紹介・Tips
01.Google App Engine 最近の動向
http://ameblo.jp/cabeat-e/entry-11394475313.html
03.Google App Engineで独自ドメイン&SSL(1/2)
http://ameblo.jp/cabeat-e/entry-11395844646.html
06.Google App Engineのデータストア バックアップとリストア
http://ameblo.jp/cabeat-e/entry-11396018265.html
「作ればわかる! Google App Engine for Java プログラミング」本をPythonで書いてみる (1)
http://d.hatena.ne.jp/thinkAmi/20120819/1345357405
Google App EngineのTwitter BotをFlaskとTweepyで作る
http://d.hatena.ne.jp/emergent/20120422/1335076686
Google App EngineのdatastoreをMaster/SlaveからHRDに変更するには?という記事を書こうと思ったんですが…
http://d.hatena.ne.jp/furyu-tei/20120909/1347130062

こんなとこかな
フレームワークの紹介とか要る?
17nobodyさん:2013/01/21(月) 12:40:14.83 ID:???
すげーGJ
1816:2013/01/21(月) 13:09:38.21 ID:???
サービス開始から結構時間経ってて
古い情報を元に始めると損する場合が結構あるから
まずこの記事ぐらいはざっと眺めた方が良い

01.Google App Engine 最近の動向|CA Beat エンジニアのブログ
http://ameblo.jp/cabeat-e/entry-11394475313.html

無料で使える!ってだけで群がった当初の情報だと
Hello World程度の浅い紹介とかしか無いけど
アプリケーションやサービスにどう適用するのかが本題
色々揃ってきてようやくライブラリやノウハウも出てきた

HRDの理解とDatastoreのバックアップ・リストア
Warmup等含めたインスタンスの管理
極力Queryを減らすKey志向の設計
memcache, Frontend Cacheによるキャッシュコントロール
辺りは押さえとくべき

NDBは使いやすいし自然とキー志向になるし
自動キャッシュがとてもありがたく
DBで微妙だったプロパティとか整理されてるんでおすすめ
1916:2013/01/21(月) 13:13:50.09 ID:???
NDBは辞めちゃったけどGvR謹製だし
StructuredProperty, JsonProperty, PicklePropertyとか
楽できるプロパティが嬉しい

Searchは今後Appengineで欠かせないサービスになる
早めにインデックスやドキュメントの管理と
使いどころを把握しとくと良い
まだ価格が公開されてない上日本語対応は微妙だけど
DatastoreのQueryで困るケースが色々解決できる
Geo検索もできるし
20nobodyさん:2013/01/21(月) 13:31:13.49 ID:Ez5Yieb2
あげ
21nobodyさん:2013/01/21(月) 17:00:25.72 ID:???
モバイルAdSenseをどうにかPythonに埋め込む方法は無いですかね?
22nobodyさん:2013/01/21(月) 18:11:30.65 ID:???
モバイルAdSenseってまだappengineで上手く動かないんだっけ?

https://groups.google.com/forum/?fromgroups=#!topic/google-app-engine-japan/dYItmifWmwA
ここにあるみたいにUAが問題かもよ
23nobodyさん:2013/01/21(月) 18:57:03.79 ID:???
その問題クリティカルすぎないか?
mobile adsense使えないとマネタイズ成り立たないサービスには使えないじゃないか…
24nobodyさん:2013/01/21(月) 19:07:48.94 ID:???
色々ググったら英語の資料に
「独自ドメインじゃないとカウントされない」
とあったが本当かね?
appspot.comはgoogle管理だからカウント除外されるのか
(売上に含めちゃったら面倒だから?)
25nobodyさん:2013/01/21(月) 19:08:58.13 ID:???
誰か独自ドメインでmobile adsenseを正常動作出来てる人いる?
26nobodyさん:2013/01/22(火) 11:20:44.44 ID:B0nURCWo
前スレのスレッドセーフの件は誰も触れてないけど
このスレには分かる人いないのか
27nobodyさん:2013/01/22(火) 11:31:33.62 ID:???
言いだしっぺの法則
君が全力で調べてその調査結果を是非世に公表してくれたまえ
28nobodyさん:2013/01/22(火) 11:41:53.35 ID:B0nURCWo
いや俺も全然わかんなくて気になってるのよ
スレッドセーフなプログラムになってないと
事故が起こるかもよ?っぽいんだけど
どうやったらスレッドセーフにできるのかとか
どういう時どういう書き方したらいいのかとか
探したんだけどさっぱりわからん
29nobodyさん:2013/01/22(火) 15:04:50.63 ID:???
英語読むっきゃねーな
30nobodyさん:2013/01/22(火) 15:46:25.12 ID:???
日本語の情報が無いってことは
調べている人自体が少ないのだろう
◯◯を調べたけど◯◯がわからない、的な情報でもいいから
誰かがどこかにblogか何かで書いていくしかないね
31nobodyさん:2013/01/23(水) 04:04:12.77 ID:???
日進月歩でグーグル側が更新しちゃうから追いつかないんだよな

linux関係でググるといまだに古い資料が出てきちゃう現象
32nobodyさん:2013/01/23(水) 10:44:20.92 ID:???
俺の調べたThreadsafeに関係ありそうなこと

・マルチスレッドプログラミングでの最大の問題点は
スレッド間で誤って同じデータを触ってしまうこと

・Pythonはそもそもグローバルインタープリタロック(GIL)という仕組みで
インタプリタでは同時に複数のスレッドが動かない

・GAEのThreadsafeはインスタンスを有効活用するためのもの
(単一のインスタンスで複数のリクエストを捌ける?)

・わけがわからん
GILがあるから原則スレッドセーフというかマルチスレッドできない??
2.7環境だとGILが無くなった??
それともThreadingモジュールを使う場合だけ関係ある話??

たすけて
33nobodyさん:2013/01/23(水) 14:06:23.26 ID:LxbWzKRZ
プログラミング初心者ですが質問です
Pythonを利用してWebサイトを作りたいと思っています

必要なツールや知識は何がありますか?

Python、GAE、HTML←この3つの知識があれば作れますか?
足りない知識やツールなどがあれば教えて下さい
34nobodyさん:2013/01/23(水) 14:24:13.41 ID:???
フロントエンド向けキーワード:
  HTML5
  CSS3
  SassとCompass(Scout)
  jQuery
  CofeeScript

バックエンド向けキーワード:
  python2.7
  webapp2
  flask
  
その他(バージョン管理):
  Mercurial または Git
35nobodyさん:2013/01/23(水) 14:37:32.98 ID:LxbWzKRZ
普通にサーバー向け
クライアント向けって書いても良かったんじゃないかと
36nobodyさん:2013/01/23(水) 15:56:37.21 ID:???
フロントエンド向けキーワード: 追加
TypeScript
WebGL
backbone.js
node.js

バックエンド向けキーワード: 追加
node.js
wsgi
django
werkzeug
37nobodyさん:2013/01/23(水) 16:52:56.59 ID:LxbWzKRZ
>>36
全て習得済みでした・・・
38nobodyさん:2013/01/23(水) 17:13:58.87 ID:shCR0fI3
SearchのGeoPoint試してるやついない?
39nobodyさん:2013/01/24(木) 20:03:07.12 ID:T/pnfIUt
MapReduceの価格表が見当たらないんだけどどこにある?
40nobodyさん:2013/01/24(木) 20:10:56.87 ID:???
今のGAEで可能なMapReduceは似非で
Quotaとかも用意されてない力技じゃなかったっけ?
41nobodyさん:2013/01/24(木) 20:18:38.39 ID:???
普通のfrontend instancesとして課金されるのかな。
それともbackendsとして?
42nobodyさん:2013/01/25(金) 09:57:59.49 ID:mBZPWIR9
Frontendじゃなかったっけ?
それ以外に当然Datastoreやその他の割り当ても使う
43nobodyさん:2013/01/27(日) 23:49:10.41 ID:???
始めたばっかりなんだが
上げようとしたらアプリ固有のパスワード入れろって怒られて、そんなん設定したっけ?と思ったが、二段階認証のほうのアレねw
紛らわしい名前w

あ、もし公式以外で良さげなサンプル集サイト知ってたら教えて下さい。
44nobodyさん:2013/01/28(月) 11:18:46.39 ID:FBfOV1KR
>>43
とりあえずgithubが鉄板
https://github.com/search?l=Python&p=1&q=appengine&ref=commandbar

https://github.com/search/advanced
からだったらスター数とかfork数で絞れるし

どのサンプルにせよ古いコードはフレームワーク周りが鬼門
ndb使ってるなら比較的最近だから判断材料になるね
ndb使ってるプロジェクトはリポジトリ検索だと探しにくいから
コード検索で"appengine ndb"とかやると良いよ
45nobodyさん:2013/01/28(月) 14:14:36.64 ID:???
>>44
ああ、なるほど!そこでのgithubなのか
名前は見かけるけど、プログラミング自体初心でgithub使ったこともなく、頭がそこまで回りませんでした
gae sampleとかで検索しても良いの出ないんで、普通はどうしてるのだろうと思ったら、そういうサイトを活用してるんですね!

仕様も結構変わってるみたいですもんねえ
色々と為になる助言ありがとうございます。
46nobodyさん:2013/01/28(月) 20:08:59.02 ID:???
GAEのmapreduceはmapperで登録するkey value pairが
datastoreに記録されるの・・・・?
47nobodyさん:2013/01/30(水) 12:47:10.50 ID:???
Datastoreのindexedってどうしてる?
インデックスのみでクエリ行けるようにすべきなのか
なるべくインデックス作らずkey -> memcacheにすべきなのか
答えは無いだろうけど方針とかある?
48nobodyさん:2013/01/31(木) 12:04:59.41 ID:fFNHcJ57
俺は後者だな
ndb使ってるとkeyonlyからget_multi()で引っ張れば
キャッシュが自動で効いて手軽だし
49nobodyさん:2013/02/01(金) 13:01:16.52 ID:???
さすがにHRDに移行しようと思うんですが
リハーサルとかできますか?
ツールを使うと問答無用で移行してしまいますか?
ツールで移行したデータを削除して
最初からやり直すことはできますか?
50nobodyさん:2013/02/03(日) 09:01:45.80 ID:???
いつまでたってもApple Push Notoficaton 送れないし、Google Compute Engine使えないしマジなんなのこの糞サーバー
51nobodyさん:2013/02/03(日) 13:34:10.49 ID:???
愚痴はtwitterでどうぞ
52nobodyさん:2013/02/04(月) 08:52:16.37 ID:FzpmjJ5g
この間Socketのクローズテスト募集してたから
Notificatonなり任意の接続もその内できそうだけどね
53nobodyさん:2013/02/04(月) 17:10:39.89 ID:???
GAEjaのフォーラムに痛いおっさんが赤っ恥な投稿してんな
ろくに英語も読めないのにクレーム風の物言いとか凄い感覚だわ
54nobodyさん:2013/02/06(水) 17:27:50.06 ID:???
すごく基本的なこと質問します
課金は1週間ごとですよね?
メールの100通制限は最初の支払いが終われば解除されるとあるけど

1. 最初の支払いって課金有効にしてから一週間目?
2. もしその1週間の間に無料枠超過しなかったら支払い発生しないからずっと100通制限?

という二点がきになってます
というのもサービスを公開すると絶対に100通でおさまるわけがないし
メール配信以外では負荷がすくないのでテスト段階では無料枠に収まってるので
毎月最低$9は取られるはずだけどこれは月末まで待たないとダメ→メールの制限は月末までとれないだとマジ困るし
なにがなんだかもう
55nobodyさん:2013/02/06(水) 19:23:04.47 ID:???
1.は多分そう

2.は超過云々じゃなく課金有効後一定時間経過だったはず
> Note: it may take 15-20 minutes for resource allocation changes to take effect.

そもそも毎月$9じゃなく毎週$2.1だよ
課金有効にした時点で毎週取られる

あくまで全部多分の話
金が絡むことをこんな場所できいちゃだめ
公式フォーラム行きなさいな
56nobodyさん:2013/02/06(水) 19:25:49.31 ID:???
そう言えば3月から月払い対応するって連絡もきてたな
57nobodyさん:2013/02/06(水) 20:45:29.23 ID:???
>>55
ありがとう
> Note: it may take 15-20 minutes for resource allocation changes to take effect.
は多分認証中ステータス?のことだと思う
https://developers.google.com/appengine/docs/quotas#Mail
ここに「100 messages daily until first charge cleared」ってあるから最初の引き落としだと思ったんだ
今5日たってるけどまだなので2日まってみる
あまりかかるようなら公式で聞いてみます
58nobodyさん:2013/02/12(火) 20:18:44.12 ID:C70uKqkZ
ここ最近で読んだほうがよさそうな情報

appengine ja night #23 #ajn23 に行ってきました - @thorikiriのてょりっき
http://d.hatena.ne.jp/t-horikiri/20130123/1358958603

appengine ja night #23 が終わりました - スティルハウスの書庫
http://d.hatena.ne.jp/kazunori_279/20130209/1360394339

Blog @vierjp : Google App Engineパターン (appengine ja night #23)
http://blog.vier.jp/2013/02/google-app-engine-appengine-ja-night-23.html

老人Zの毎日更新ブログ Google App Engine Billing Migration Notice
http://peracola.blog90.fc2.com/blog-entry-1655.html

採用事例:ソーシャルイントロクイズ 『SongPop』
http://gae-p.blogspot.jp/2013/02/songpop.html

Google App Engineでデータストアに保存したエンティティーのキーを取得する方法 | Tech Booster
http://techbooster.org/gae/15069/#more-15069

今日のPython: Google App Engine のアップロードを2段階認証プロセスに対応させる
http://blog1.erp2py.com/2012/02/google-app-engine-2.html
59nobodyさん:2013/02/12(火) 21:08:44.34 ID:???
ためになった
60nobodyさん:2013/02/12(火) 23:29:54.27 ID:???
最近GAE始めたばかりなので
offsetの事とか全然知らなかった
危ない危ない
その他の事はちょっと難しすぎて手に負えない感じだなあ
61nobodyさん:2013/02/13(水) 00:08:46.72 ID:???
GAEのページングは地味に苦労する

cursor使うと
|< |<< [1][2][3][4][5]…..[20][21][22] >>| >|
こういう飛ばし飛ばしページング出来ないのがね

まぁ自分の経験上、ページングみるときに飛ばしながら見ることはないので
「次へ」と「戻る」だけでナビゲーションは事足りるんだけどね
62nobodyさん:2013/02/13(水) 01:14:29.98 ID:???
なんだ、調べてみると cursor はそういう仕様なのか・・・
アンチパターンだの書いてあったが限定的すぎるわ
63nobodyさん:2013/02/13(水) 01:30:36.33 ID:???
ああ、でも cursor 使わないと今度は
大量のデータのページングが行えないのか
どっちつかずだ
64nobodyさん:2013/02/13(水) 10:25:37.71 ID:???
単純なトレードオフだと思うけどな

件数やページ指定必須のページングしたいなら
offsetでコスト高

TwitterやFacebookみたいに順次次のページが得られれば良いなら
cursor使ってコスト低

cursorがまだ無い頃に紹介されてた独自のcursor的設計とか
offsetとcursorを上手く組み合わせれば
もうちょっとバランスよくなるかも知れんが
結局使える範囲が狭くなるな
65nobodyさん:2013/02/14(木) 12:50:13.73 ID:???
1.75ででるやん
しょぼいやん
66nobodyさん:2013/02/14(木) 23:53:01.40 ID:UFQyynMf
全文検索の料金きまらねえと案件につかえねえ
67nobodyさん:2013/02/15(金) 02:31:31.12 ID:???
>>66
自分で実装すればいいじゃん
適当な形態素解析ライブラリで検索対象の文章を分かち書きして
それをリストプロパティにぶっ込んでデータストアに保存(Create)

検索時(Read)は検索クエリを同様に形態素解析ライブラリで分かち書き
複数個の単語が帰ってくるから、それを元にリストプロパティから等価クエリ(=)で引っ張ってきてKeyリストを取得

得られたKeyリスト(複数)をAnd集合演算、最終結果のKeyリストをもとに
データストアから実態を取得でおk

Javaのほうだと実際にこれをやってる人何人かいる
68nobodyさん:2013/02/15(金) 10:04:33.91 ID:???
Google Cloud Endpointというのを使うと
サーバ側でコードをあまり書かずに
クライアント側で結構完結できてしまう
ということなのかな?
69nobodyさん:2013/02/15(金) 14:08:39.60 ID:???
>>67
全文検索の独自実装なんてとっくにやっとるのよ
それが高コストすぎるからSearch APIに期待してるわけで
Datastoreでアホみたいな高コスト要因になるクエリも
Searchなら多分そんなややこしいもんじゃない筈だしね

>>68
Endpointsはスマホアプリとかのバックエンドを
最低限のコードで実現できる仕組みだな
テスト版がJavaしかなくて残念だったけど
Pythonも対応したのでその内評価してみるわ
70nobodyさん:2013/02/15(金) 15:54:54.87 ID:???
どなたかアイデアいただけませんか。
以下の様な MyModel があったとします。

class MyModel(ndb.Model):
 message = StringProperty()
 date = ndb.DateTimeProperty(auto_now_add=True)

MyModel.message には None 状態のデータが入る事があり、
message 内文字列が存在する MyModel を取得するために
以下の様な記述を行なっています。

q = Model.query(Model.message > None)

ここで、更に MyModel にデータが登録された日付で検索を行う条件を加えたい所ですが
不等号による検索を行なっているため
date での order は不可状態。
よって、message を登録する際は文頭に 日付の時間を必ず追加するようにしています。

これで解決できてはいるのですが、もっとスマートな方法はないでしょうか。
71nobodyさん:2013/02/15(金) 16:26:51.64 ID:???
>>70
booleanのnone_flagを新設
文字列がNoneだったらCreateやUpdate時にTrueを入れる
デフォルトはFalse

None以外のエンティティを取得したい時は
none_flag=Falseと日付orderを使う
7270:2013/02/15(金) 17:45:50.29 ID:???
>>71
うおーありがとうございます!
73nobodyさん:2013/02/15(金) 18:39:04.54 ID:???
おれも質問

ずっとPHPでCakePHP使ってきたんだけど
PythonというかGAEではコマンドでひながた作ったり
モデルデータを自動で作ってくれるフレームワークってないの?
74nobodyさん:2013/02/15(金) 18:54:29.69 ID:???
公式からダウンロードできるGAEランチャーの左下の+を押せばひな形出来る(GUI)
デプロイもワンクリック
ぶっちゃけCUIでダラダラコマンド入力するよりこっちのほうが楽でしょ

モデルデータは知らん
75nobodyさん:2013/02/17(日) 21:39:56.97 ID:???
web2py使ってたけどやめたわ。
全然標準でいける。
76nobodyさん:2013/02/17(日) 21:42:19.18 ID:???
スレッドセーフで悩んでたやつは何でなやんでたんだ。
前スレみれないからわからんわ。
77nobodyさん:2013/02/18(月) 01:17:59.85 ID:???
>>75
標準ってwebappのほう?
生産性的にはどうなんかね
78nobodyさん:2013/02/18(月) 02:00:37.11 ID:???
>>77
webappだな。
生産性はビューまわりは悪いな、やっぱ。
作るものによっては、ビューエンジンだけ、Djangoのとか使ったほうがいいかもな。
他は変なストレスがなくてよい。
データストアとかは、変にラップされたもの使うより、自分で実装したほうが精神衛生上よいし、
認証周りも、フレームワークで用意してくれてるごっついもの使うより、自分で1から実装したほうが、
フレームワーク独特の仕様でイライラするようなことはないな。
まぁGAEにかぎったことじゃないがな。webappはシンプルでいいよ。
79nobodyさん:2013/02/18(月) 10:28:08.12 ID:???
>>76
どうやったらスレッドセーフなものが書けるの?
みたいな話だったと思う
俺の理解はこのスレの >>32 と変わんないから
もし知ってるならなんかヒントだけでもほしいよ

>>78
俺も同意
素直だけどGAE前提だから扱いやすいね
webappは2の方がいろいろ楽になってるから
英語しかないけど2使ったほうがいいな
80nobodyさん:2013/02/18(月) 16:59:48.99 ID:5q8/651I
あああああ
81nobodyさん:2013/02/20(水) 23:01:15.15 ID:???
k = db.Key('Entity', 'test')
db.delete(k)

みたいにフェッチしないで削除したほうが、よけいなREAD発生せずにすむのかね?
82nobodyさん:2013/02/20(水) 23:17:04.25 ID:???
>>81
正解
83nobodyさん:2013/02/20(水) 23:35:34.60 ID:???
>>82
ありがと
84nobodyさん:2013/02/22(金) 22:23:25.92 ID:???
これいいね
http://tr.im/zw5y
ソースはこれ
85nobodyさん:2013/02/27(水) 13:03:32.96 ID:???
date型って、○月○日とか3日以内とかの条件で使えるのか?
年月日時間、別々で持った方がいいかなぁ。まぁじっくり設計して考えろって話だが。
86nobodyさん:2013/02/27(水) 14:10:08.76 ID:???
試してみて結果報告を頼む
できない場合
dateを数値に変換したものを別に持たせとけば良さそう
87nobodyさん:2013/02/27(水) 15:28:26.46 ID:???
>>85
両方できる
ただ比較演算子を温存するために定点からの日数や年数を持たせておくといいと思う
88nobodyさん:2013/02/27(水) 18:46:55.44 ID:???
>>86
あぁ別で持つって手もあるのか。
なんか気づいたら報告する。
>>87
d
ほぅ。例えば日数だけで検索したい場合は、stringとかで持ってたほうが早いってことかな。
89(;D)笑男 ◆LeBIz0ZWfs :2013/03/01(金) 10:21:37.15 ID:???
>>598
これを安全というか危険というか

今の放射能の議論は扱ってる数字は同じなので解釈問題になってしまってる
90(;D)笑男 ◆LeBIz0ZWfs :2013/03/01(金) 10:22:17.55 ID:???
誤爆しました すみません
91nobodyさん:2013/03/01(金) 11:12:42.95 ID:???
あのスーパーハカーも使っているGAE
92nobodyさん:2013/03/01(金) 18:20:33.13 ID:???
dat2 = address2. all()
dat2.filter( "shikutyosonmei =",u '名古屋市千種区' )
dat2.order( "todofukenmei ")
dat2.order( "shikutyosonmei ")
dat2.order( "ooazatyotyome ")

ローカルではエラーが出ないがサーバーではエラー
dat2.get("ooazatyotyome","")
    dat2.get("ooazatyotyome")

正解
  dat2.ooazatyotyome

まえからそうだっけ?
93nobodyさん:2013/03/01(金) 18:21:45.76 ID:???
あ、ちがう

ローカルではエラーが出ないがサーバーではエラー
dat2[0].get("ooazatyotyome","")
dat2[0].get("ooazatyotyome")

正解
dat2[0].ooazatyotyome
94nobodyさん:2013/03/02(土) 10:20:30.13 ID:???
あれ 何が起こってるんだろ

今度はローカルで
AttributeError: 'dict' object has no attribute 'ooazatyotyome'
95nobodyさん:2013/03/02(土) 10:49:04.61 ID:???
あ、わかった
データが取れない所でDict入れてた
スレ汚しすみません
96nobodyさん:2013/03/02(土) 20:05:26.87 ID:???
ReferenceProperty持ってるエンティティ取得した時点で、
親エンティティの検索も発生しちゃうのか?
もしそうだとしたら、とりあえずキーだけ欲しくて条件によっては親エンティティも
取得したい場合は、ReferenceProperty使わないほうがいいのかね。
9796:2013/03/02(土) 23:00:41.72 ID:???
Appstatsなるものがあるのか。自分で調べるわ。
98nobodyさん:2013/03/03(日) 17:47:19.86 ID:JQuTw+Pi
w
99nobodyさん:2013/03/13(水) 10:08:08.66 ID:???
特定のGoogleアカウントにだけアクセスを許可するページってどうやって作るんですか?
以下のコードでそれっぽいことできたんですが、もっと良い方法ないですかね。

if users.user_id() == 'アクセスを許可したいGoogleアカウントのID':
 <ページを表示>
else:
 <403ページヘリダイレクト>
100nobodyさん:2013/03/13(水) 10:26:27.95 ID:???
ありますよ
101nobodyさん:2013/03/15(金) 07:54:21.04 ID:4gK3sk/W
ui
102nobodyさん:2013/03/15(金) 10:53:33.91 ID:C48HVSYd
>>99
どういう意図の制限か知らんが
それが一般にオープンなものじゃなくて
身内だけで使うものなら
そのアプリケーション単位のアカウント設定使いなよ
103nobodyさん:2013/03/15(金) 11:03:52.65 ID:???
それだと administrator になりませんか?
104nobodyさん:2013/03/15(金) 12:28:40.86 ID:C48HVSYd
Viewer Roleも渡せない相手なら
そりゃある程度手間かけないと

自分でやってる形が一番手軽だけどメンテしにくい
Accountモデル作ってキーをGoogleAccountのIDにして
key.get()で判定が一番早いかな
Datastore ViewerでCRUDできるし

ndbだとkeyで取ったらキャッシュするんで
メンテ時はキャッシュのフラッシュ忘れずに
105nobodyさん:2013/03/15(金) 18:02:46.14 ID:???
ありがd
あんたA人屋根
106nobodyさん:2013/03/15(金) 20:50:24.23 ID:???
前回散々叩かれたのに
また村上が懲りずにデマばらまいてる
そのうちこのスレにもやってくるぞ
107nobodyさん:2013/03/15(金) 20:52:10.36 ID:???
>>106
村上って誰?
108nobodyさん:2013/03/18(月) 00:00:31.01 ID:oBAWUAZZ
GAEアプリから2chかbbsへ投稿したいですがhttp://www.dropbox.com/s/v5tkm2x2fj2ijfa/Photo%2013-03-17%2023%2039%2036.png写真の通り逆引、グーグルIPで投稿できません。解決方法があれば教えていただければ幸いです。
109nobodyさん:2013/03/18(月) 02:14:17.40 ID:???
クライアントのJavaScript上から投稿すれば?
110nobodyさん:2013/03/20(水) 22:14:03.14 ID:???
クラウド通すと、犯罪予告とかに使われるぞ。
111nobodyさん:2013/03/22(金) 18:54:05.29 ID:???
te
112nobodyさん:2013/03/25(月) 19:50:19.12 ID:???
おもろいけどすぐ飽きる
http://portal.nifty.com/2013/03/22/a/3.htm
113nobodyさん:2013/04/05(金) 14:36:44.83 ID:exGUhXLD
モデルエンティティにある名前のプロパティを操作すると
時々プロパティがなかったりしてエラーがでるんだけど
どうやってチェックするかど忘れした
114nobodyさん:2013/04/08(月) 01:52:09.51 ID:qxm57EL8
全然伸びてないなぁ。
115nobodyさん:2013/04/10(水) 08:56:46.33 ID:ZdxjB7Qn
日本で成功事例出てこないとむずかしいな
いまんとこゲームのバックエンドばっかりだし
116nobodyさん:2013/04/10(水) 15:37:42.92 ID:ZdxjB7Qn
2.1ドルかからなくなってるな
117nobodyさん:2013/04/10(水) 21:48:37.92 ID:???
>>116
これどゆこと?
無料枠増えた?
118nobodyさん:2013/04/12(金) 03:12:38.26 ID:???
Python2.7とndb時代に対応した参考書ってないのかな
Webドキュメントだけだと分散しすぎて体系的なノウハウ得にくいから
誰か出版してよ

こういうサービス使って電子書籍で売ってくれ
http://p.booklog.jp
Paypalでもいいし
119nobodyさん:2013/04/12(金) 10:36:21.35 ID:X5Q6bRz6
執筆してる間に新しくなったりするからなかなか難しいねえ
自分で分かる範囲なら細かいのでも答えるよ

中の人が言うように日本の利用者が増えないと
アジアでの運用もはじまんないし
120nobodyさん:2013/04/12(金) 16:41:09.10 ID:???
初心者向けの入門サイト作るか

HelloWorldから始まり

フレームワーク(Webapp2ベース)を使った
分業しやすいフォルダ構成(MVCに分ける)

Datastoreと連携したTwitterライクなアプリケーション開発
・ユーザ登録(メール送信でアドレスが実在するか確認)
・投稿一覧表示、ページング(カーソル)
・画像ファイルアップロード(Blobstore)
・発言をフォロワーへFAN OUTする処理にTask Queueを使う等

こんな感じで実務向けに使えるものを懇切丁寧にコード添えて解説

Python GAEのサンプルは基本的なものはあるが
実用的なものが少ないのでそれを補ったほうがいいと思う
(だから習作以上のものが中々出てこない)
121nobodyさん:2013/04/13(土) 16:14:24.63 ID:???
ところで質問です
思い立って使ってスレッドセーフのコードに変更しているんですが
webapp.RequestHandlerをwebapp2.RequestHandler
に書き換える必要はあるでしょうか?
webapp2.WSGIApplicatioについてはいろいろ言及があるんですが
RequestHandlerについてはあんまりありません。
教えていただけるとありがたいです。
122119:2013/04/15(月) 10:11:55.04 ID:???
>>121
スレッドセーフが明示されたのはwebapp2からで
webapp2のドキュメントでも説明ないけど
RequestHandlerも変えるべきだよ
そもそもwebappとwebapp2の混在っておかしいけどな

webapp2 + スレッドセーフでi18nやるんなら
webapp2_extras.localを使わないとだめだよ

http://webapp-improved.appspot.com/api/webapp2_extras/local.html
123nobodyさん:2013/04/15(月) 12:53:14.28 ID:KWTb2j+5
webapp2_extras.localってi18nじゃなくて
Threadローカルで扱えるコンテナでしょ?
122のは前半はともかく
localについては嘘っぱちだから信じちゃいかん
124nobodyさん:2013/04/15(月) 17:28:42.61 ID:???
なるほどとりあえずwebapp2にしとけってことですね。
おふたりともありがとうございました。
125nobodyさん:2013/04/15(月) 17:37:16.46 ID:???
GAEPに興味はあるんだが中々腰が上がらない
これってAWSと比べてコスト安いの?
最初無料で使えるのはいいんだが
転送量とかCPU課金とか諸々の要素含めて
1000PVあたりのコストがどのくらい掛かりそうなのか
データがなくて導入できぬ

画面面積に占める割合が文字データ80%
画像データ20%の典型的なWebアプリケーション
マネタイズはAdsenseなどの広告のみ(CPMは50円程度)とした場合
黒字に出来るんかね

作りました!赤字です、じゃやる気にならない
かといってそこらへんの具体的なデータを出してる人がいない
126nobodyさん:2013/04/15(月) 18:59:34.40 ID:???
そういうちまちましたのには向いてないと思うな
もっと遠大でないとわざわざ選ぶメリット薄い
127nobodyさん:2013/04/15(月) 19:00:12.69 ID:???
そういうコストに関してどれくらいかかるかは
GAEのサイトに書いてあるよ
128nobodyさん:2013/04/15(月) 20:33:15.26 ID:???
画面に占める割合とかじゃなくて、
ファイルサイズとか、
計算できる材料はあるでしょ?
ちゃんと計算してみなよ
129nobodyさん:2013/04/17(水) 19:21:57.89 ID:xekc1LTh
glassってもう出回ってんの?
130nobodyさん:2013/04/17(水) 20:59:58.58 ID:QU1A5c7b
◆じゃあのさん劇場◆
21時 開演予定(開演時間は遅れる場合があります)

892 名前:以下、名無しにかわりましてVIPがお送りします[] 投稿日:2013/04/17(水) 00:36:28.53 ID:3UTZp96G0
おうwwww俺だwww
なんか、保守デモ関連できな臭い話聞いたんだがよおwww
まだ情報の整理と、関係者からの裏とりはできてねえから公開は今日の21時以降になるwww
ミンスのクソどもも関わったカルト団体に関する情報だwww楽しみになwww
じゃあのwww

--- 以下スレ情報 ---
高岡さんがフジ韓流ゴリ押し批判したら干されたのでウジテレビ凸
http://hayabusa.2ch.net/test/read.cgi/news4vip/1366132575/
131nobodyさん:2013/04/18(木) 09:06:13.36 ID:XU80Xxbm
Ver.1.7.7リリースのタイミングで、課金を有効したアプリに対する「週2.10ドルの最小課金額」が無くなってるそうだ。
使いやすくなったな。

・Google App Engine Blog: App Engine 1.7.7 Released
http://googleappengine.blogspot.jp/2013/04/app-engine-177-released.html
132nobodyさん:2013/04/20(土) 01:53:43.55 ID:???
ひがさん slim3更新してくれないかなー
133nobodyさん:2013/04/20(土) 02:11:43.52 ID:???
さくらインターネットでjpドメインとったんだけど、
www.ドメインのcnameに「ghs.googlehosted.com」セットして24時間以上たっても解決できないんだけど、
何かやり方知ってる人いませぬか?
134nobodyさん:2013/04/20(土) 09:51:48.00 ID:???
>>133
appとgaeの関連付けちゃんとやってある?
app側でもgaeを関連付けないといかんけど
135nobodyさん:2013/04/20(土) 10:55:50.98 ID:???
>>134
関連付けやってるよ

以前にも何度も独自ドメインでやった経験あるんだけど、なぜか今回はできない。
その時はお名前.comで、今回初めてさくらインターネットでドメインとったから、
たぶんさくらインターネットのドメイン設定に原因があると思うのだけれど。。。
136nobodyさん:2013/04/20(土) 12:48:51.50 ID:???
DNSかも知れないしもうちょっと時間がかかるだけかもしんないね
137133:2013/04/20(土) 16:06:07.73 ID:???
ありがとう 自己解決した
ghs.googlehosted.comという値の最後にドットを付けないといけなかったらしい
www CNAME ghs.googlehosted.com.
138nobodyさん:2013/05/08(水) 18:03:52.68 ID:GQZD525G
久々に開発再開したら開発用サーバーが起動しねえ
って思ったら開発用サーバーのバージョン上がって
ホストとかのオプション指定が変わってたのね

https://developers.google.com/appengine/docs/python/tools/devserver

ここの一番下にあったオプションで解決
注意が必要なのがDevelopment Console
今までと違って管理画面は別ホストで起動するから
デフォのlocalhost:8000が空いてないなら
自分でちゃんと指定が必要よ
139nobodyさん:2013/05/10(金) 21:01:09.25 ID:???
PHPをサポート言語に追加とか言ってるぞ
マジやめて
140nobodyさん:2013/05/10(金) 23:24:23.51 ID:???
貴様の頭脳よりGoogleデベロッパー様の頭脳のほうが格段に上だ
貴様がNoと言うのなら、Googleデベロッパー様の考えが正しいのだろう
141nobodyさん:2013/05/14(火) 21:33:06.22 ID:???
Python 2.5アプリ作成は2013年12月まで、Google App Engine | 開発・SE | マイナビニュース
http://news.mynavi.jp/news/2013/05/14/058/index.html
142nobodyさん:2013/05/24(金) 01:07:31.79 ID:IXkef+nZ
phpなかなか順番こねー
143nobodyさん:2013/05/24(金) 12:07:59.35 ID:???
なんか朝からサーバーエラーだわ
M/Sほんとダメってる

さっさとHRD化しちまおう
144nobodyさん:2013/05/26(日) 07:21:00.50 ID:???
google.appengine.ext.db ってまだ使える?使わない方がいい?
145nobodyさん:2013/05/26(日) 08:53:38.65 ID:???
developmentサーバってCPUを結構くうんだな。ノートPCのバッテリーがもりもり減ったわ。どうしてくれる。
146nobodyさん:2013/05/26(日) 09:47:54.07 ID:MnYU1h6G
GAEは HTTP_RANGE って取得できる???
147nobodyさん:2013/05/26(日) 11:39:42.32 ID:???
馬鹿には無理
148nobodyさん:2013/05/27(月) 09:31:07.23 ID:GfmfkIoD
今更dbは使うメリットないよ
せいぜい、サンプルがndbより少し多いってだけ
149nobodyさん:2013/05/27(月) 10:01:27.65 ID:???
わざわざコード書き換えてまでndbにする価値あるかな?
150nobodyさん:2013/05/27(月) 16:27:05.69 ID:GfmfkIoD
Keyでのgetにキャッシュが自動で効くから
作りによっては課金を大きく減らせるかも

dbで手厚くその辺カバー済みの人は効果薄いけど
Googleのサンプルとかでもndb主体になってるから
メンテし続けるならndbに置き換えといた方が良いよ

このスレの上の方に移行用にGvRの書いたドキュメントのリンクあるし
151nobodyさん:2013/05/31(金) 09:58:43.76 ID:???
どんどんmemcacheに放り込んでいったら
最終的に課金が激減したわ

ところでpydevでmemcacheのメソッドの
未定義って警告が消えないんだけど
これ何か問題あんの?
152nobodyさん:2013/05/31(金) 10:50:29.64 ID:???
pydev って eclipse のプラグイン?
たしかそのプラグインは不安定で
エラーや警告が出まくる事はあったかな
153nobodyさん:2013/05/31(金) 12:38:10.67 ID:???
そう、Eclipseのやつ
結構アップデート入ってるみたいなのに
いつまでも解消されないんだよね
今のところEclipse上の警告だけっぽくて
本番でも開発用でもエラーとかは出ない
pydevだけの問題なのかな
154nobodyさん:2013/05/31(金) 13:25:11.33 ID:???
Fixing PyDev memcache unresolved import
ttp://blog.kicaj.com/fixing-pydev-memcache-unresolved-import/
155nobodyさん:2013/05/31(金) 14:31:00.32 ID:???
ありがとう!!
156nobodyさん:2013/06/05(水) 10:00:56.17 ID:???
Blobstoreに登録した画像を外部に投げたいんですがsend_blobとget_serving_urlではダメでした
TwitterモジュールはTweepyを使っています
どちらの関数もos.path.getsize(filename)でos.errorを吐いているので画像として取得できてない?感じです
157nobodyさん:2013/06/05(水) 10:20:16.24 ID:???
どのAPIだよ
158nobodyさん:2013/06/05(水) 10:58:33.19 ID:???
fileじゃない
159nobodyさん:2013/06/05(水) 11:09:38.41 ID:???
自前でBlobstore対応に書き換える
160nobodyさん:2013/06/05(水) 11:38:39.35 ID:???
ありがとうございます
外部=Twitterにです、すみません
具体的に言うとTweepyのupdate_profile_imageでプロフィール画像として登録したいのです
>>157
REST API 1.1だと思います(勘違いしていたらすいません)
>>158
ファイルを送りつけるっぽいsend_blob(save_as=True)でもダメでした
>>159
モジュール内でfp.read()をしていたのでこれをBlobReaderにしたら動くかな?
試してみます
161nobodyさん:2013/06/05(水) 12:06:07.33 ID:???
BlobReaderでできました><
162nobodyさん:2013/06/06(木) 22:07:03.69 ID:+dx8dQR6
リークw
163nobodyさん:2013/06/07(金) 10:10:26.89 ID:???
うーむ2, 3ヶ月ぶりに
Google App Engine Launcher を起動して1.8にアップデートしたら
ndb.Model に設定したプロパティが存在しないとか言われて
AttributeError で値が取得できなくなってしまった
Console で確認してみるとデータストア値は正常に格納されているし
何かアップデートで変更がかかったのかな
簡単なプログラム作って1から検証や…!
164nobodyさん:2013/06/07(金) 11:29:06.20 ID:???
blobstore.create_upload_url('/upload')をhttp://hoge.appspot.com/hoge?hoge=hoge上で使うと
http://hoge.appspot/_ah/upload/?hoge=hoge/〜〜になるんだけどこれで正常ですか?
アクセスするとhttp://temporary-blobstore-error.appspot.com/にリダイレクトされます
何故かローカルだと?hoge=hogeは混入しないで正常に登録できます
165nobodyさん:2013/06/14(金) 14:01:58.23 ID:???
166nobodyさん:2013/06/14(金) 23:42:49.02 ID:???
Gitはバージョン管理ソフトだよね?
Gitが使えると何がうれしいの?
167nobodyさん:2013/06/14(金) 23:46:40.49 ID:???
最近はGitに公開してるソースを就活時にアピールするんだ
168nobodyさん:2013/06/15(土) 01:16:56.63 ID:F6WFJorJ
>>167
githubって言いたかったのか?
169nobodyさん:2013/06/15(土) 14:10:13.37 ID:???
どうせ大抵git使ってるだろうし
多少規模が出てきたらpushでデプロイしたくなるよ
1人開発だとそこまででもないかも
170nobodyさん:2013/06/19(水) 09:39:15.55 ID:ImwWCD0b
障害多いな
171nobodyさん:2013/06/20(木) 10:39:31.55 ID:U909f5q7
Java版のスレないの?
172nobodyさん:2013/06/20(木) 10:57:09.20 ID:???
173nobodyさん:2013/06/20(木) 13:17:42.78 ID:???
>>172
過疎りすぎでダメだな
174nobodyさん:2013/06/20(木) 15:04:47.08 ID:U909f5q7
if 馬鹿には無理:
if 馬鹿には無理:
if 馬鹿には無理:
&#160;&#160;&#160;&#160;&#160;&#160;pass
175nobodyさん:2013/06/20(木) 21:25:23.72 ID:U909f5q7
fa
176nobodyさん:2013/06/20(木) 21:35:09.21 ID:U909f5q7
IDかぶり?
177nobodyさん:2013/06/21(金) 08:46:36.77 ID:???
たまにかぶるね
178nobodyさん:2013/06/21(金) 23:52:32.94 ID:???
まさかこんな過疎板でかぶるとはな
179nobodyさん:2013/06/28(金) 15:34:30.54 ID:???
180nobodyさん:2013/07/17(水) NY:AN:NY.AN ID:???
Dashboard見てたらこんな表示が
Looks like you're using Backends. We suggest that you make the switch to App Engine Modules.
See the Modules documentation to learn more about converting: Python | Java.
181nobodyさん:2013/07/17(水) NY:AN:NY.AN ID:t+kBVwkP
modulesはまだいまいち移行する気にならんよなあ
previewってのもあるけどドメインの扱いとか
バージョンと混同しそうでなんか嫌だ

どういうアプリケーションだと嬉しいのかね
182nobodyさん:2013/07/20(土) NY:AN:NY.AN ID:???
GAEは少資本の学生起業家等に最適だと思うんだけどねー
スマホアプリのバックエンドとしても使えるし
応用の幅があっていいんだが中々普及してくれない
183nobodyさん:2013/07/20(土) NY:AN:NY.AN ID:???
サービス開始当初は著名プログラマーがこぞってGAEで開発してたけど、どうして使わなくなったのだろう?
DataStore難すぎ。費用計算が複雑。標準APIに制限があるのでサードパーティのライブラリが使えないものがある。スピンアップを考えると、大き目のFrameworkが使えない。とか?
184nobodyさん:2013/07/20(土) NY:AN:NY.AN ID:???
当初は全文検索がなかったから実案件に使いにくかったというのがあるな。
独自に実装するには形態素解析とDataStoreに対する深い理解がないと無理だったし。
あとPythonでもスピンアップ遅い&スピンアップ後も
レスポンスがモッサリでUXが悪かった。
185nobodyさん:2013/07/20(土) NY:AN:NY.AN ID:???
「合わないアイデアが多い」ってのが
スタートアップなんかで採用されにくいとこじゃないかな
SongPOPとかSnapChatみたいな成功事例出てきて
適したアイデアを探す連中も増えそうだけど

GCEがもっと身近でGAEと連携しやすくなれば
Amazonから流れてくる層も増えるかな
186nobodyさん:2013/07/22(月) NY:AN:NY.AN ID:???
>>185
VM Runtimeがまさにそれだね
187nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
VM Runtimeっていまいち情報みつかんないんだけど
modulesのひとつに、実態はGCEなVMが指定できる感じ?
管理のイメージがどうもピンと来ない
188nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
BlobstoreからGoogle Cloud Storage推奨になったみたいだけど
Billingの項目を見た限りでは「有効」か「無効」かの
ニ極端しかなくて予算に応じた柔軟な上限課金設定できないよね?
課金額をコントロールできないとめちゃくちゃリスク高いと思うのだけど
他の人は気にならないのだろうか

http://stackoverflow.com/questions/14769151/google-cloud-storage-budget-limit

外人様も気にしてるみたいだけど
「ログ監視して予算オーバーしたら無効にすればいい」とか
何かしっくりこない回答しかない・・・
189nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
たしかにこわいな
Cloud DatastoreとかCloud SQLもおんなじかな

visaデビッドみたいなカードで登録しとけば
残高分しかリスク負わなくて済むんで
おれは念のため全部そうしてるよ
190nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
>>189
visaデビットでも関係なくね?
残高以上引かれなくなるというだけで
請求のタイミングまでに発生した従量制の課金債務はなくならんぞ
あとから支払い督促状が届くだけな気がするが…
191nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
AWSのS3あまりよく知らないんだが
GCS(Google Cloud Storage)と同じく上限設定ないのかな?
中国人がシステムを悪用して大量に動画像をDLしまくって
転送量課金を増やしまくる攻撃とかあり得そうで怖すぎる

パケット定額なしのスマホ持たされるようなものだな
192nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
どうやらこの問題は既に「EDoS攻撃」という名で知られているようだ。
http://ameblo.jp/biz-assure/entry-11140957220.html

従量課金制は怖すぎる…
193nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
個人ではそういう攻撃に対して無力だな・・・
194nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
GAEはもう流行ってないのか
PaaS環境は魅力的だがElastic Beanstalkみたいなのもあるしな
195nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
無料でずっと気楽に使えるGAEは良いわ
196nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
その暫くは無料で使える点が魅力のGAEで画像等のファイルアップロードが必要な場合
EDoS攻撃に対して無力な従量制青天井のGoogle Cloud Storageを使うことがが
推奨になってきてるわけでして…
https://developers.google.com/appengine/docs/java/blobstore/#Writing_Files_to_the_Blobstore

ぐぐってみると月1000PVしかない個人零細のWebサービスにも
DoS攻撃来てるみたいだし
きちんと対策されないと安心して使えるインフラにはなれないな
197nobodyさん:2013/07/23(火) NY:AN:NY.AN ID:???
App Engine ModulesはEJBの目指した世界に近いな
198nobodyさん:2013/07/24(水) NY:AN:NY.AN ID:???
>>196
他のサービスでそのEDoS攻撃対策されてるとこあんの?
199nobodyさん:2013/07/24(水) NY:AN:NY.AN ID:???
重い画像や動画アップロードするようなサービス自体に
そもそも無理があるわけで
各所で動画サイトが潰れまくった経緯を知らないほどアホなんだろうか
200nobodyさん:2013/07/24(水) NY:AN:NY.AN ID:???
動画サイトはビジネスモデルが広告で
回線費用>広告収入になりやすいからな

画像系くらいなら問題なく運用出来てる所ばかりじゃね?
201nobodyさん:2013/07/24(水) NY:AN:NY.AN ID:???
動画はYoutubeに任せればいいが
画像をまったく使わないテキストデータ
オンリーのサービスってあんまり見かけないな

ユーザプロフィール画像みたいなアイコンでも
テキストデータよりは情報量多いから
そこ目掛けて大量アクセスすりゃあっというまに
運営者の財布がスッカラカンになる
202nobodyさん:2013/07/24(水) NY:AN:NY.AN ID:???
AppEngine限定ならstaticはGoogleのCDNから配信だから
アイコンとかはまあどうにかなるよね
動的に受け取る場合は厳しいけど

まあappengineに限らず従量制が多いクラウドにつきまとう問題だけど
大手はどこも配信にコストかかってるわけだよね

appengie側でDDoS対策用意するか
サードパーティのDDoS防御ソリューション組み入れられる機構にしないと
根本的には対処しようがないよね
203nobodyさん:2013/07/26(金) NY:AN:NY.AN ID:???
メモリキャッシュだけを利用してチャットするだけみたいなシステムだと
フリー枠だと分間30アクセスくらいでどのくらい使えるんだろうか
規約がよくわからんが対戦ゲーム用のプロトコル作れば捗りそう
204nobodyさん:2013/07/29(月) NY:AN:NY.AN ID:???
>>203
プロトコル作るとかアバウトすぎて見積しようが無いよ
最初からフリーで収めるつもりなら
GAEにしない方がいいとおもうけどな
205nobodyさん:2013/08/07(水) NY:AN:NY.AN ID:???
だれかPHPためしてるひといる?
206nobodyさん:2013/08/07(水) NY:AN:NY.AN ID:???
Love it!
207nobodyさん:2013/08/27(火) NY:AN:NY.AN ID:???
Googleからユーザー情報の漏洩はあるんかね
208nobodyさん:2013/09/08(日) 20:11:38.92 ID:???
209nobodyさん:2013/09/09(月) 22:54:18.06 ID:???
node.jsの対応して欲しい。
210nobodyさん:2013/09/12(木) 19:07:32.59 ID:???
ここってアダルト可?
211nobodyさん:2013/09/12(木) 19:21:47.96 ID:???
無理
212nobodyさん:2013/09/12(木) 19:38:13.85 ID:???
>>211
レスありがとう。
エッチなのはダメか、残念…。
213nobodyさん:2013/09/13(金) 01:45:09.28 ID:???
今はポルノ規制は撤廃されてるはず。
英語版の利用規約を見てみたら?
214nobodyさん:2013/09/13(金) 05:48:38.46 ID:???
215nobodyさん:2013/09/15(日) 01:05:46.25 ID:???
>>213
開発再開!
216nobodyさん:2013/09/15(日) 12:56:21.33 ID:SfGmDfII
すげえ! いっきに評価が変わったぜ!!
217nobodyさん:2013/09/17(火) 14:07:56.21 ID:f/zei361
作れるアプリ数もっと増やせないのかな

ちょっと窮屈になってきた
218nobodyさん:2013/09/17(火) 22:21:59.39 ID:???
GAEって3.3とかバージョン選べますか?
219nobodyさん:2013/09/18(水) 08:20:28.30 ID:???
wなんだよ3.3って?
220nobodyさん:2013/09/18(水) 10:21:56.37 ID:???
Pythonのバージョンだよ
221nobodyさん:2013/09/18(水) 12:09:37.47 ID:gKUd666P
pon
222nobodyさん:2013/09/18(水) 12:29:04.21 ID:???
Issue 909 - googleappengine - Python 3 language support - Google App Engine - Google Project Hosting
http://code.google.com/p/googleappengine/issues/detail?id=909
223nobodyさん:2013/09/19(木) 09:38:55.85 ID:2DO9sy6x
アプリ数が10超えそうなんでアカウント増やそうと思うんだけど
管理してて困ることってありますか?
224nobodyさん:2013/09/23(月) 13:36:59.05 ID:???
あれ、自分は10以上にできてるけど。
たぶん信用されたら枠が増えると思うよ
225nobodyさん:2013/09/23(月) 19:00:20.10 ID:6xUsxWFz
課金した分は増えるんだけど
課金しても料金発生してないからその分は増えないっぽい
226nobodyさん:2013/09/27(金) 05:19:17.34 ID:fbpfkdAA
http://xxxx/1111とhttp://xxxx/2222で同じページを返して
ブラウザにも同じキャッシュを使わせることはできますか?
twitterではどうやってるのですか?
227nobodyさん:2013/10/08(火) 16:34:27.32 ID:+1XP7p2Y
>>226
同じページを返すのは簡単にできます
キャッシュを使わせるにはフロントエンドキャッシュを有効にすればいいだけですが
2つのURLで同じキャッシュを使わせる方法は知りません
228nobodyさん:2013/10/08(火) 16:35:35.08 ID:+1XP7p2Y
片方のURLにリダイレクトを返すようにしておくってのはどうでしょうか?
そしたらキャッシュがあれば使われる気がします
229nobodyさん:2013/10/18(金) 13:13:41.33 ID:???
過疎ってんなあ
誰かモジュールの使い方教えてくれ
英語ページ何度読んでも結局どう使っていいのかわからん
230nobodyさん:2013/10/18(金) 15:41:20.63 ID:???
ていうか、全体に使いにくいしな
理想論的にはエスペラント語に近いわ
231nobodyさん:2013/10/19(土) 10:40:39.52 ID:CkAuxCIP
Master/Slave のサポート期限っていつだっけ?
232nobodyさん:2013/10/19(土) 15:32:37.53 ID:???
お前ら個人で最高いくら請求きた?
SOHO等、経費除く。
233nobodyさん:2013/10/22(火) 10:59:12.29 ID:8Hrfr4H/
最高で3万くらい
ページングで無限ページ生産しててそれを無数のボットが延々とたどってた
234nobodyさん:2013/10/23(水) 16:14:17.94 ID:OxKB/bfX
こわいなそれ
チキンだから日$2が限度だわ
235nobodyさん:2013/10/25(金) 14:24:52.86 ID:XHryq/AE
もちろん上限設定しとけばそんなことはないんだけど
企業サイトだったしいろいろいじってる最中だったから
テストの負荷分で落としちゃ悪いと思って上限に余裕とってたからね

がんばって料金抑えたから一年くらいで黒字になるからいいけど
236nobodyさん:2013/10/28(月) 11:18:00.97 ID:Q6kLAiC2
>>235
ちなみに料金抑えるのにどんな工夫した?
237nobodyさん:2013/10/29(火) 00:51:54.97 ID:???
Datastore writeキツイなぁ
238nobodyさん:2013/10/29(火) 10:40:18.27 ID:y+BQMiVe
>>236
課金のほとんどがフロントエンドインスタンスだったので
長くなる処理をフロントエンドで待たせるとインスタンスが必要になるので
jsonでページに結果を渡す仕様に変更して
時間のかかる処理をバックエンドにやらせて結果を通知してからダウンロードさせた
あとはDatastoreの結果を30秒キャッシュしたくらい
バックエンドでやらせた結果をblobでURL渡しにできたらもっと課金減らせると思う
239nobodyさん:2013/10/29(火) 15:34:29.30 ID:???
最近、 Deadline exceededが増えてる気がする。
エビデンスはない。
240nobodyさん:2013/10/31(木) 08:04:00.27 ID:gzKHVm+h
昔見たロードマップでPython3に対応するっていってた気がしたんですが
その後何か変化あったでしょうか?
241nobodyさん:2013/10/31(木) 10:42:33.03 ID:???
242nobodyさん:2013/11/01(金) 06:52:03.38 ID:???
apiproxyが死にがちな気がする
243nobodyさん:2013/11/20(水) 20:13:46.56 ID:???
え?エロおkなの?まじで?
244nobodyさん:2013/11/27(水) 23:09:45.71 ID:???
何か知らないうちに新機能実装(テスト)されてたりするな

あの鬱陶しい、直リンもしないアップデート通知になんか情報乗っけとけよとは思う
245nobodyさん:2013/11/28(木) 11:25:57.99 ID:???
webapp2、シンプルで好きなんだが、みんな認証どうやってんの?
AuthKitとか使えばいいのか?
246nobodyさん:2013/11/28(木) 12:41:20.82 ID:???
これ使ってる
http://webapp-improved.appspot.com/api/webapp2_extras/auth.html
sessionの実装は
http://webapp-improved.appspot.com/api/webapp2_extras/sessions.html
こっちベースで、デフォがCookieをストレージにする
気になる場合はsession_backendからDatastoreかmemcacheを

自前のAuthorizedHandlerとか作って使うのが楽
247nobodyさん:2013/11/28(木) 12:44:19.94 ID:???
Cookieベースのセッションは、Railsと似た方式ね
特に困った経験は無い
248nobodyさん:2013/11/28(木) 15:04:51.40 ID:???
おお、これでやってみます。
ありがとう!
249nobodyさん:2013/11/29(金) 06:42:32.14 ID:???
ちなみにBASIC認証はどうしてる?
公式リリース前に関係者にレビューしてもらいたいだけなんだが&#8226;&#8226;&#8226;
250nobodyさん:2013/11/29(金) 11:55:25.38 ID:???
ttp://d.hatena.ne.jp/nullpobug/20110528/1306516902
webapp2だとこことかみたいに自前で書くしかないかな

関係者の規模や性質にもよるけど自分だったら
app.yamlで一時的に全体をlogin: adminにして
それを staging.***.appspot.com とかにアップ
アプリケーションのコンソールで相手のアカウント追加
こんな感じで済ませると思う
251nobodyさん:2013/11/29(金) 13:01:02.55 ID:???
情報サンクスです!
252nobodyさん:2013/12/01(日) 05:31:06.02 ID:???
GAEでホームページを作っているのですが
404ページをカスタマイズするにはどうしたら良いですか?
具体的には存在しないURLにアクセスしたらトップページにリダイレクトするだけでいいのですが。
253nobodyさん:2013/12/01(日) 11:36:51.11 ID:2jNrRIHk
254252:2013/12/02(月) 00:20:22.53 ID:???
>>253
返信ありがとうございます。
app.yamlを下記のようにしましたがデフォルトの404ページが出ます。

application: ***
version: 1
runtime: python27
api_version: 1
threadsafe: yes

handlers:
- url: /
static_files: htdocs/index.html
upload: /
- url: /
static_dir: htdocs

error_handlers:
- file: index.html
255nobodyさん:2013/12/02(月) 10:00:10.51 ID:lpvRac5e
>>254
htdocs/index.html
では?
256252:2013/12/02(月) 20:52:47.15 ID:???
>>255
Deploy時に
Error 400: --- begin server output ---

Client Error (400)
The request is invalid for an unspecified reason.
--- end server output ---
がでてDeploy出来ません。
257nobodyさん:2013/12/03(火) 10:44:02.83 ID:+YtsDmGG
あ、ごめんそもそもover_quota dos_api_denial timeoutしかハンドルされてないみたいね
404はハンドラの最後にそれ以外のすべてのURLを対象にして
- url: /.*
static_files: htdocs/index.htm
upload: htdocs/index.htm
258252:2013/12/03(火) 14:03:55.56 ID:???
>>257
デフォルトの404が出ます。
- url: /
static_dir: htdocs
ですでにすべての下位URLに割り当てられているせいだと思います。
259nobodyさん:2013/12/03(火) 14:43:21.25 ID:+YtsDmGG
http://memo.imomushi.com/google-apps-engine---python/404peji-wo-youi-shi-te-miru
このサンプルはたぶん動くと思うよ
何が違うか考えてみよう
260nobodyさん:2013/12/03(火) 15:20:43.44 ID:???
なんか変な方向にいってるけど、webapp2の例外ハンドラを実装するだけの話じゃないの?
ttp://webapp-improved.appspot.com/guide/exceptions.html
261252:2013/12/03(火) 17:55:02.74 ID:???
>>259
動きました。ありがとうございます。
262nobodyさん:2013/12/03(火) 18:18:31.16 ID:+YtsDmGG
>>260
おお 便利だー
263nobodyさん:2013/12/15(日) 23:45:35.51 ID:???
Blobstore使う時に、同じ画面で「画像ファイル指定」と「文字入力」を同時にさせたいことが良くあるじゃないですか。
で、「文字入力」欄に日本語が入力されると、文字化けしませんか?
ローカル開発環境だと日本語が入力されても問題なく処理できるんですけど、本番環境だと文字化けするような・・・どうしよこれ。
264nobodyさん:2013/12/16(月) 10:33:26.68 ID:ohWcrgQx
LINEに数年前にデートしたデパガが現れたから声かけたら

気がついたら食事に行く話になってた
細かい日程まで決めてないからこのままフェードアウトしよっと
265nobodyさん:2013/12/16(月) 10:34:09.17 ID:ohWcrgQx
あ、ごばーく
266nobodyさん:2013/12/20(金) 00:43:32.73 ID:???
Goolgeのhelloworldアプリが以下のエラーで起動すらできないのですが何か原因分かりませんか。
Google App Engine Launcherやコマンドプロンプトでdev_appserver.pyを直接動かしても起きるようです。

2013-12-20 00:35:58 Running command: "['C:\\Python27\\pythonw.exe', 'C:\\Program Files\\Google\\google_appengine\\dev_appserver.py', '--skip_sdk_update_check=yes', '--port=8080', '--admin_port=8000', 'D:\\develop\\work\\python\\helloworld']"
Traceback (most recent call last):
File "C:\Program Files\Google\google_appengine\dev_appserver.py", line 197, in <module>
_run_file(__file__, globals())

(中略)

File "C:\Python27\lib\mimetypes.py", line 249, in enum_types
ctype = ctype.encode(default_encoding) # omit in 3.x!
UnicodeDecodeError: 'ascii' codec can't decode byte 0x83 in position 9: ordinal not in range(128)
2013-12-20 00:35:59 (Process exited with code 1)
267nobodyさん:2013/12/20(金) 01:01:51.69 ID:???
なお環境は WinXP 32bit, Python 2.7.6, GAE SDK 1.8.8 です
268nobodyさん:2013/12/20(金) 03:34:50.06 ID:???
>>266
ググればすぐに情報が見つかるよ。

レジストリのHKEY_CLASSES_ROOT\MIME\Database\Content Typeに
ASCII以外の文字を含むタイプ名が登録されていると例外が発生する。
QuickTimeがロシア語の名前を登録するのが原因らしい。
269nobodyさん:2013/12/20(金) 19:51:47.04 ID:???
>>268
詳細な情報ありがとうございます。
Windows環境で発生するというのは見かけましたがそういうことだったんですね
一応Pythonのバージョンを2.7.5にすると動くことを確認しました。
レジストリの掃除はちょっとホネが折れそうなのでこれでしのぎます
270nobodyさん:2014/01/01(水) 11:00:58.52 ID:???
基本的なことだと思うんだけどunique制約がないから
重複登録の防止ってどうやってる?
いちいち全データを取得して被ってないかチェックしか思いつかない・・
271nobodyさん:2014/01/06(月) 09:39:23.59 ID:JOlxiE+j
結果をkeyで取得すれば高速だし重複処理もできるからそうしてる
272nobodyさん:2014/01/12(日) 01:31:59.89 ID:q2C1gqcI
Invalid arguments
Runs a development application server for an application.
dev_appserver.py [options] <application root>
Application root must be the path to the application to run in this server.
Must contain a valid app.yaml or app.yml file.
と先頭にダラダラと怒られます。どうすれば良いでしょうか?
273272:2014/01/12(日) 01:35:30.43 ID:q2C1gqcI
pythonのバージョンは2.7.2
GAEのは1.7.5
OSはWindows7
一応、この環境で学校のは動いたのですが、自分のが動かないです。
困ってるの教えてください。
274nobodyさん:2014/01/12(日) 09:47:32.02 ID:UltINpuS
dev_appserver.pyの起動オプションが間違ってるって書いてあるじゃん
ランチャかpydevの起動オプションチェックした?
275272:2014/01/12(日) 12:11:56.31 ID:q2C1gqcI
>>274
ランチャかpydevの起動オプションチェックするってどういうことですか?
(学校の同じ環境で、コマンドでオプション何もつけずに、うまく行ったんですけど)
276nobodyさん:2014/01/12(日) 13:18:31.27 ID:UltINpuS
ルートディレクトリが違ってるのかも
277272:2014/01/12(日) 13:46:00.63 ID:q2C1gqcI
>>276
ルートディレクトリが違うってどういう意味ですか?
278nobodyさん:2014/01/12(日) 16:19:09.09 ID:???
素直に先生に相談してみたら.
何のために学費払ってんの
279nobodyさん:2014/01/12(日) 16:31:49.98 ID:???
>>277
app.yamlがあるフォルダへ移動して
dev_appserver.py .
(半角ピリオド)
としてみたらどうだ?
あと、家のGAEバージョンは?
280272:2014/01/12(日) 18:39:33.85 ID:q2C1gqcI
>>278
先生がギブアップしてしまった。

>>279
>>273に一通り書いたつもりだけど、GAEのバージョンは1.7.5です。
C:\Users\Y.Sato\Desktop\GAE>"C:\Program Files (x86)\Google\google_appengine\dev_
appserver.py" ae-00-testing
こんな感じでコマンド打ってます。
半角とピリオドつける場所、わかりません。。。
281nobodyさん:2014/01/12(日) 20:08:03.28 ID:???
>>280
デスクトップのGAEフォルダの下に、
ae-00-testing というフォルダがあって、
そのフォルダ内にapp.yamlがあるの?
cd ae-00-testing してから
dev_appserver を叩いたらどう?
282nobodyさん:2014/01/13(月) 01:04:26.66 ID:???
なんでGUI版使わないんだろう
283272:2014/01/13(月) 01:15:42.70 ID:mgMypIex
>>281
一つ目の質問は、そういうことです。
それだと、上手くいかないですね。
284nobodyさん:2014/01/13(月) 10:19:55.25 ID:3FBly2eI
コマンドプロンプトで
dir C:\Users\Y.Sato\Desktop\GAE
dir C:\Users\Y.Sato\Desktop\GAE\ae-00-testing
やって結果晒して
285272:2014/01/13(月) 19:11:01.95 ID:mgMypIex
2013/12/17 16:26 <DIR> .
2013/12/17 16:26 <DIR> ..
2013/12/03 16:44 <DIR> ae-00-testing
2013/12/14 23:53 <DIR> ae-01-webapp
2013/12/17 16:24 839 ae-01-webapp.zip
2013/12/15 17:18 <DIR> ae-04-templates
2013/12/17 16:26 2,343 ae-04-templates.zip
2 個のファイル 3,182 バイト
5 個のディレクトリ 386,548,281,344 バイトの空き領域

2013/12/03 16:44 <DIR> .
2013/12/03 16:44 <DIR> ..
2013/12/31 13:59 110 app.yaml
2013/12/29 23:14 68 index.py
2 個のファイル 178 バイト
2 個のディレクトリ 386,547,691,520 バイトの空き領域
286nobodyさん:2014/01/13(月) 19:16:55.30 ID:???
pastebin.comにdev_appserver.pyを実行したときのエラーメッセージを全部貼れ
287272:2014/01/13(月) 19:30:30.88 ID:mgMypIex
エラー画面, app.yaml, index.py
http://pastebin.com/ATwkAw3j
http://pastebin.com/1rCLz07B
http://pastebin.com/zh8Nh6ca
こんな便利なものがあるんですね(てか、一個目の有効期限neverにしてしまった)。
288nobodyさん:2014/01/13(月) 19:40:17.19 ID:???
>>287
..\GAE>python "C:\Program Files (x86)\Google\google_appengine\dev_appserver.py" ae-00-testing
先頭に"python"をつけて実行してみて
289272:2014/01/13(月) 20:27:14.38 ID:mgMypIex
>>288
いけました! ありがとうございます!
これ、学校の先生に報告したら、喜ばれる!
(でも、何が学校と違ったんでしょうか??)
290288:2014/01/13(月) 21:22:34.44 ID:???
>>289
プロンプトでこれを実行して
>assoc .py
.py=ほにゃらら
みたいなのが出力されるから
>ftype ほにゃらら
を実行
その出力結果を貼って
291272:2014/01/13(月) 21:40:03.16 ID:mgMypIex
>>290
C:\Users\Y.Sato\Desktop\GAE>assoc .py
.py=Python.File

C:\Users\Y.Sato\Desktop\GAE>ftype Python.File
Python.File="C:\Python27\python.exe" "%1" %*
292288:2014/01/13(月) 22:48:18.72 ID:???
関連付けが間違ってるのかと思ったらそうではないようだ
原因は分からん
エラーメッセージから何らかの原因で引数がうまく渡っていないことが
想像できた。こういう場合はOSがやらかしている可能性が高いので
直接python.exeを呼んだら出来たというわけ
293nobodyさん:2014/01/16(木) 16:04:59.53 ID:n0982M2h
終わってみたらくだスレネタだった
294nobodyさん:2014/01/16(木) 17:46:14.11 ID:???
https://cloud.google.com/console/project
この左側メニューの課金>請求先アカウントの一部が勝手にキャンセルされてしまった。
テスト段階だから課金は当然$0の延滞なしなので理由不明。(課金を無効にしたまま暫く放置すると強制キャンセルされる?)

>この請求先アカウントはご利用いただけなくなりました。
>残りの請求書や料金、払い戻し(該当する場合)の詳細はこちらをご覧ください。

プロジェクトのほうから課金を有効にしようとするとエラーになる(=課金設定が必要なAPIが使えないという状態)

>サーバー エラー
>申し訳ございません。
>もう一度お試しください。問題が解決しない場合は、以下の [フィードバックを送信] を使ってお知らせください。
>下記の追跡番号をコピーしてフィードバックにご記入ください。よろしくお願いいたします。
>追跡番号: undefined

エラーの原因となっているであろう、参照中のキャンセルされた請求先アカウントを変更しようとしたが
そんなメニューはどこにもなく、請求先アカウントの再有効化のメニューもない。
完全に詰んだ。
295nobodyさん:2014/01/17(金) 00:57:26.60 ID:???
age
296nobodyさん:2014/01/17(金) 11:33:47.32 ID:+BA0LYJJ
>>294
まったく同じ現象でした
アカウントは別に使えるので
プロジェクトを作ってみたら作れました
古いプロジェクトは様子見て削除
297nobodyさん:2014/01/17(金) 11:57:34.48 ID:???
今みたら課金有効化のエラーメッセージが変わってた
>サーバー エラー
>申し訳ございません。
>もう一度お試しください。問題が解決しない場合は、以下の [フィードバックを送信] を使ってお知らせください。
>下記の追跡番号をコピーしてフィードバックにご記入ください。よろしくお願いいたします。
>追跡番号: undefined

↓↓↓↓↓↓↓↓

>サーバー エラー
>undefined

Googleさんよ、頑張ってなおしてくれ
このままだとAWSに揺らぐ気持ちを抑えられない
298nobodyさん:2014/01/17(金) 12:01:12.06 ID:???
請求先アカウント名 ステータス
 Billing Account for XXXX       閉鎖
 Billing Account for XXXX       閉鎖
 Billing Account for XXXX       閉鎖
 Billing Account for XXXX       閉鎖

この請求先アカウント一覧リストにも削除メニュー必要じゃねって毎回思ってる
閉鎖して関連付けられなくなったアカウントが残り続けているのは見た目、心象ともに悪し
コメント欄追記でバージョン管理している会社のソースコードの手直しを任された感じといえば分かるだろうか
頑張って直してくれ
299nobodyさん:2014/01/17(金) 12:08:56.49 ID:+BA0LYJJ
>>294
あとapp engine のbilling settingsで決済カードを編集したり削除して改めて登録することもできます
300nobodyさん:2014/01/30(木) 15:53:46.86 ID:fy33022l
pydevのアップデートをチェックしてアップデートしたあと
デバッグしようとすると
ImportError: No module named json
というのが出て それはdjangoの中へのパスをプロジェクトプロパティの
pyshonpathで指定したら出なくなったんですが
次に
Unexpected error setting up the debugger
Socket operation on nonsocket: configureBlocking
が出て来ました

回避方法・元に戻す方法などなんでもいいので教えてください
win8.1 64
eclips kepler
pydev 最新のをPyDev Update Site - http://pydev.org/updates/から再インストールしてみました
何卒お助けください
301nobodyさん:2014/01/31(金) 14:46:14.26 ID:mlRzVxK1
アプリケーションランチャーおよびコマンドプロンプトからは開発サーバーが起動できます
Pydev のStart Debug Server も起動できます

pydevのDebug Configrationsを使ったデバッグで失敗します
コンソール出力です

pydev debugger: warning: psyco not available for speedups (the debugger will still work correctly, but a bit slower)
pydev debugger: starting
pydev debugger: google app engine integration enabled
WARNING 2014-01-31 14:27:42,539 urlfetch_stub.py:115] No ssl package found. urlfetch will not be able to validate SSL certificates.
WARNING 2014-01-31 14:27:42,628 rdbms_mysqldb.py:74] The rdbms API is not available because the MySQLdb library could not be loaded.
Error: option --python_startup_script not recognized
Runs a development application server for an application.

dev_appserver.py [options] <application root>

Application root must be the path to the application to run in this server.
Must contain a valid app.yaml or app.yml file.

Options:
--address=ADDRESS, -a ADDRESS
<以下略>

option --python_startup_script
についてぐぐってみましたが有力な情報が出てきません
pydevをダウングレードする方法はないでしょうか?
よろしくおねがいします
302nobodyさん:2014/02/01(土) 12:37:47.93 ID:2KFQvVu0
pydevをダウングレードしたら直りました
お騒がせしました
303nobodyさん:2014/02/06(木) 19:05:33.42 ID:wcYz7Wuz
DataStoreへのアクセスを減らすためにmemcacheを使おうと思ってるのですが、
これってアクセスされないデータから順に削除される見たいな記述があるんですが、
必ず消されないデータみたいなものって定義できます?
やりたいこととしては、頻繁に書き換えられるエンティティがあるんで、
それをキャッシュしておいて、
書き換えが発生した場合、キャッシュのみを更新していって、
30分とか1時間とか決まった時間経過するとバッチで、
DataStoreに書き込んで最新化するようにしたいんです。
304nobodyさん:2014/02/16(日) 11:14:42.24 ID:x7he8HhJ
>>303
NDBは?
305nobodyさん:2014/02/16(日) 18:26:42.92 ID:???
NDBは書き込みにキャッシュ無いよ
読み込みのキャッシングにmemcache使ったり
コンテキスト内でのキャッシュがあるぐらい

消されないデータってのはmemcacheじゃ無理
そもそも永続化の仕組みじゃないんだから
いつ消えるか分からないし保証はない
何を扱ってるか見えないからこれ以上言いようが無いけど
途中の更新が喪失しても問題ないものなら
memcacheに通常書き込んで
ただtaskqueで30分おきとかで永続化したら?
306nobodyさん:2014/02/17(月) 16:41:13.43 ID:XebsJzK2
memcacheは読み出しのキャッシュなんだし
存続時間に保障がない仕様なんだから
リスク覚悟でやるしかないね
作るのは簡単なんだし
307nobodyさん:2014/03/01(土) 17:57:00.64 ID:???
>>1
オブジェクト指向は愚かな考え。排便メソッドを実装した人間クラスから美少女クラスが作れない。
http://toro.2ch.net/test/read.cgi/tech/1393660194/31
308nobodyさん:2014/03/05(水) 11:07:24.06 ID:???
Discounted Instanceみたいなbackend用の割引サービスほしいのお
309nobodyさん:2014/04/03(木) 15:14:38.24 ID:???
GAEで静的サイトアプリ作った場合
こんな感じでindex.html置いて
http://www.hogehoge.com/oppai/index.html

後ろの/が無いとアクセス出来ないんだけど
X http://www.hogehoge.com/oppai
○ http://www.hogehoge.com/oppai/

上が表示出来て下が出来ないのはapp.yamlの書き方間違ってる?

app.yamlはこんな↓

application: アプリ名
version: 1
runtime: python
api_version: 1

handlers:
- url: (.*)/
static_files: htdocs\1/index.html
upload: htdocs(.*)/index.html

- url: /(.*)
static_files: htdocs/\1
upload: htdocs/(.*)
310nobodyさん:2014/04/23(水) 17:50:18.58 ID:SqpWaV/m
過疎ってるからレスあるのか不安だけど質問していい?

many-to-many(多対多)が必須なアプリケーション
(Twitterならuser-timeline)ってGAEじゃ作れないよね?

timelineにListProperty付ける方法だと
数万人のフォロワーにtimeline配信(Fanout)するの無理だし
(仕様です、で押し通すのはちょっと…)

UserTimelineの結合テーブル用意する場合だとパフォーマンス的に問題あるよね
特にFanout書き込み処理時
(書き込みあるごとにフォロワー数万人分の参照用データを書き込み…)
(TaskQueueに投げて処理するとコスト高くないかい?)
311nobodyさん:2014/04/29(火) 17:43:40.42 ID:F2pgXBlu
>>310
そういうのこそ Google App Engine が大好きな分野だろう
パフォーマンス的にも、100% 問題ない。
312nobodyさん:2014/04/30(水) 02:44:11.33 ID:???
対多だったらCloud SQLかと思ってたけどそうでもないの?作り方次第?
313nobodyさん:2014/05/03(土) 16:56:58.45 ID:???
なんでここpython限定なの?
314nobodyさん:2014/05/03(土) 17:13:48.54 ID:???
GAE Javaスレは過疎って消滅したはず
315nobodyさん:2014/05/03(土) 19:18:04.52 ID:dwgN+kay
app = webapp2.WSGIApplication( [('/',OpenPage), ('/result',PostPage) ], debug=True )
という形で作ったんだけど
index.htmlみたいな物は無いのでしょうか?
316nobodyさん:2014/05/28(水) 20:13:20.59 ID:???
すごく久しぶりに弄ろうとしたら
いつのまにか 10 個から 25 個にアプリケーション枠増えてるのね
317nobodyさん:2014/05/29(木) 08:38:37.82 ID:???
マジか
318nobodyさん:2014/05/29(木) 08:39:19.03 ID:kYNnKCf7
ネイティブスマホアプリのバックエンドに使ってみようかな
319nobodyさん:2014/05/29(木) 09:18:18.43 ID:???
>>141
試しにアプリ増やしてみたけど Python 2.5 でもまだいけてる

>>131
どんどん使いやすくなるね

ユーザー少なすぎてサービス終了にならないかどうか心配
320nobodyさん:2014/05/29(木) 12:40:53.17 ID:???
>>316
マジ!?
>>319
Amazonの方に人が流れてそうだから心配。Googleには頑張って欲しい。
321nobodyさん:2014/05/29(木) 13:08:15.48 ID:Tmn0U92g
>>131
めちゃめちゃ使いやすくなった
322nobodyさん:2014/05/30(金) 04:10:24.03 ID:???
まじかー、結構グラフ赤になること多かったから1ドル運用してみっかな
323nobodyさん:2014/05/30(金) 15:18:06.54 ID:???
俺は使わんが、PHPに対応したのはいいと思う
次はRubyだな
Herokuの客層を取り込めれば大きい
324nobodyさん:2014/05/30(金) 15:20:37.54 ID:???
>>319
ロックイン上等のシステム作っておいて
勝手に終了されたら潰れちゃう会社出てくるだろ

AWS向けに移植するにしても金かかるんやぞw
フロントエンド(HTML&JavaScript)部分は流用できるとしても
データストア関連のコードは全部書き直しだわ
325nobodyさん:2014/05/31(土) 02:34:05.70 ID:???
だから心配してるんだよ

簡単に引っ越せたり
そもそもどうでもいいサービスなら
客減ろうが潰れようが
どうなろうと知ったこっちゃない
326nobodyさん:2014/05/31(土) 05:29:13.90 ID:???
データストア関連のコードを抽象化するレイヤーでwrapすれば良いNONI
327nobodyさん:2014/05/31(土) 09:12:28.43 ID:???
AWS の SQL で Master/Slave とか HRD の
Datasore をエミュレーションする python ラッパー作ったら需要あるかな
それなら最初から AWS で造った方が良いか
328nobodyさん:2014/05/31(土) 09:32:45.30 ID:???
>>325
そんな大事なサービスをGAEで作っちゃったんですか!?
て話になる。
329nobodyさん:2014/05/31(土) 14:39:49.16 ID:???
GAEってどうなの?使える?
330nobodyさん:2014/05/31(土) 15:18:47.38 ID:???
使える
331nobodyさん:2014/06/01(日) 04:04:02.09 ID:qDHk7um9
初心者質問ですみません。サービスを作って公開したところへスクリプトか何かでアタックされたら一気に課金枠内上限までいってサーバーが停止してしまうのでしょうか。Googleが感知してIPを弾いてくれたり、何らかのガードはGAEにデフォルトで付いてるのでしょうか。
もしそういった仕組みが無ければみなさんその辺りは自分で対策されているのでしょうか。
332nobodyさん:2014/06/01(日) 10:14:04.61 ID:iT9OtQtU
>>324
データストア関連コードの書き換えなんてそんなに面倒かな?
333nobodyさん:2014/06/01(日) 10:19:09.18 ID:iT9OtQtU
>>331
一日単位で課金の上限に行くとサービス停止する
IP弾く機能はあるけどIPの登録は自分でする必要がある
自分は月間の予算を3倍取っておいてサービス継続を優先してる
異常があったらすぐIP弾いたりする
いままで一番多いのはBINGBOTだったけどね
なくなったページにいつまでもアクセスしてくるからログがそればっかりになる
302返さない自分も悪いんだけどさ
334nobodyさん:2014/06/01(日) 10:43:57.71 ID:???
へんなアクセスの IP はプログラム自信で見つけることは可能なので自動化したいけど
IP の登録はダッシュボードからしか出来ないのかな?
アク禁 IP 登録用の API とかある?
335nobodyさん:2014/06/01(日) 14:29:50.46 ID:iT9OtQtU
>>334
ないよ
IPの登録はdos.yamlとかdos.xmlをアップロードすることで可能だから
ファイルアップロードをapp engine内で行えば可能かも
336nobodyさん:2014/06/01(日) 23:44:43.59 ID:???
>>333
レスありがとうございます。IPは手動登録なんですね。
ロボット向けにきちんと正しいステータスコードを返すべきというのも参考になりました。
>>335の方法も興味深いです。

ユーザー投稿有りでデータベースを増やしていく形のサービスの依頼(仕事レベルでは無い)を受けていて、アクセス過多以外にデータベースのデータ(イコールこのケースでは資産)をどうスクレイピングから保護するか、という事も気になっていました。

ベストはユーザー登録。
ユーザー未登録で投稿可能にするのであればIP監視も必要。
ユーザーエージェントもチェック。
IPやユーザーエージェントは偽装可能なので、他にクッキーかURLのquery経由で一時的なIDを渡してやってGAE側でvalidateする。
適当なIDを渡してもvalidateを通らないようにしておいて、一時IDはクライアントとGAE側で同じ生成アルゴリズムを用いて正当性を検証する。

というような事を考えています。
きっとまだ抜け穴はありそうなので引き続きデータ保護を検討してみます。
337336:2014/06/01(日) 23:51:20.56 ID:???
少し前にSimejiの騒動があったので、どう不正なアクセスからコンテンツのデータを保護するかという事が気になりました。
普段はクライアント側を書いていてサーバー側は初心者なのですが、万一参考になればと思って先の独り言の様な文章も投稿させて頂いた次第です。
スレ汚し失礼しました。
338nobodyさん:2014/06/02(月) 02:57:47.45 ID:???
いいぞ
スレ過疎ってるから何でもこいだ
339nobodyさん:2014/06/02(月) 09:35:56.51 ID:pUDft4ul
>>336
javascriptを使って認証cookei与えればjavascriptが走らない汎用Botは弾けるよ
ただ、そのサイト狙い撃ちでスクレイピングしてくるやつなら当然ソースハックして
対策はしてくるだろうけどそれもちょっと難読化して暗号化ロジック隠せば
半分くらいのBot作者の手には負えないかも
でも検索エンジン弾いちゃっていいのかってのはユーザビリティ考えるとどうなの?って感じ
ユーザーがそこまで望むならメールフォーム使ったユーザー登録くらい作るよね
340nobodyさん:2014/06/02(月) 12:14:42.15 ID:???
python3.4でgaeが書きたい
341nobodyさん:2014/06/02(月) 17:10:26.83 ID:???
>>336
ユーザー登録は google account で代用出来る
不正なアクセスあったらそのアカウントを自分の DB でブラックリスト化する
342nobodyさん:2014/06/02(月) 17:26:05.70 ID:???
自分のみ利用したいんですが
どこで設定するのでしょうか?
343nobodyさん:2014/06/02(月) 19:43:42.07 ID:???
自分のみなら
app.yaml で require: administrator だったかな
344nobodyさん:2014/06/05(木) 08:20:40.58 ID:aC0HWfOe
誰もいない
345nobodyさん:2014/06/05(木) 11:06:56.01 ID:???
スパゲティするなら今のうち
346nobodyさん:2014/06/08(日) 07:31:00.85 ID:???
PC向けページしか無くてスマホからの利用は不便なので、
中継サーバーでスマホ向けにするような Webアプリとか作ってみたいんだけど。

ちなみに PC向けページはレコーダーのDIGA、
LAN内のサーバーは rep2 動かしてる Win版 XAMPP、
アクセスしたい端末は iPod touch。
347nobodyさん:2014/06/08(日) 15:20:19.32 ID:???
作ってみたいから何なんだよ・・・
348nobodyさん:2014/06/17(火) 18:27:43.53 ID:???
pythonスレで誘導されてきました。
本文コピペになってしまいますが、以下、ご教示頂けないでしょうか。
宜しくお願い致します。

http://yono.cc/python/gae/

こちらを参考にして、HelloWorldを表示するだけのWebサーバを作りました。
上記ページの「webapp フレームワークで Hello World を書き直してみる。」のところに掲載されているソースコードをまるまる利用しています。
しかし、実際にブラウザでアクセスすると以下の様なエラーが出るのですが、これは何が原因なのでしょうか・・・?
Hello worldすら出来ないとかもうどんだけダメなんだ自分・・・


ERROR &#160; &#160;2014-06-17 07:20:34,551 wsgi.py:262]
Traceback (most recent call last):
&#160; File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py", line 239, in Handle
&#160; &#160; handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
&#160; File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py", line 301, in _LoadHandler
&#160; &#160; raise err
ImportError: <module 'test' from '/中略/channelapitesttest/test.py'> has no attribute app
INFO &#160; &#160; 2014-06-17 07:20:34,555 module.py:639] default: "GET / HTTP/1.1" 500 -
349nobodyさん:2014/06/17(火) 20:29:29.44 ID:???
>>348
ソースやyamlの何処かに'test.app'ってのがありそうだな
appって拡張子があるような罠
350nobodyさん:2014/06/18(水) 07:20:49.63 ID:???
馬鹿には無理
351336:2014/06/18(水) 12:02:45.87 ID:???
馬鹿の一つ覚え
352nobodyさん:2014/07/03(木) 00:14:37.04 ID:???
urlfetchでwait()をコールしないで通信が終わってるか確認する方法ってある?
asyncで並列で通信して早く終わったやつから先にwait()呼びたいのだけど。
353nobodyさん:2014/07/03(木) 17:47:33.19 ID:W/gQtvhf
168 デフォルトの名無しさん [sage] 2014/07/03(木) 17:10:36.81 ID:/QLPOJJ3 Be:
Dartプログラミング言語をGoogleのApp Engineがサポート…ついにサーバ言語としても位置づけ
http://m.jp.techcrunch.com/2014/07/01/20140629googles-dart-programming-language-is-coming-to-the-server/

これでW3Cは無理が有る様に思うが、きっかけにはなりそう。

あまり使いたいと思わせる要素は少ないな。あるのは数の力かな。
多分この辺りの言語戦争がWebKit内で有って分裂したんじゃ無いだろうか。表面は違うが。
354nobodyさん:2014/07/03(木) 18:26:26.88 ID:???
てっきりGoと住み分けさせるのかと思ってたけど、割と普通に被らせちゃうのね
355nobodyさん:2014/07/03(木) 21:04:17.66 ID:???
356nobodyさん:2014/07/09(水) 09:38:06.40 ID:h7vQ9eKP
ここでこちらに誘導されたので
http://peace.2ch.net/test/read.cgi/tech/1400479217/553

covendy を使いGAEにてデプロイして、htmlフォームから入力されたデータを一行ずつテキストファイルに書き込む処理をしているのですが、
処理に時間がかかり、deadlineを起こしてしまいます。
そこで Task Queue を使おうと思うのですが、使い方が分かりません。
なんらかのリンクを作り、そこにpostすることは分かったのですが、formからデータを取得するためにもう
def post(self)は使っていますが、その処理でもTask Queue は使えるのでしょうか?
また取得したデータの受け渡しは、どのように行っていますか?
357nobodyさん:2014/07/09(水) 14:33:20.22 ID:???
GAE じゃなくて Google Apps Script 使った方が良いかもね
358nobodyさん:2014/07/10(木) 01:09:39.10 ID:???
>>356
今のform受けクラスをtaskqueueに使って、そこにform受けて丸投げの皮をかぶせるのが
一番工数少ないかな

テキストファイルだと壊れる可能性あるけどねー、ホームページのカウンターとか懐かしいな
359nobodyさん:2014/07/18(金) 12:55:29.47 ID:AI2lwKUe
もしかして pytz って GAE で使えない?
360nobodyさん:2014/07/21(月) 22:07:42.21 ID:G+qvyj17
361nobodyさん:2014/09/05(金) 19:29:17.96 ID:u2Ths9qZ
362nobodyさん:2014/09/07(日) 18:09:03.78 ID:JTsyldJT
webapp2のURLルーティングにCoC機能を付けたいんだけど
どういう方法がベストプラクティスかな

myapp/
 application/
  model/
  view/
  controller/
 app.yaml
 main.py

ここのcontroller/フォルダに
foo_handler.py
bar_handler.py
bazz_handler.py

があったとすると
"/foo"はfoo_handerに
”/bar"はbar_handerに
"/bazz"はbazz_handerに
スクリプトに明示的に記述せずとも自動的に設定されるようにしたい
363nobodyさん:2014/09/08(月) 10:00:53.63 ID:???
インデックスの数の上限がなくなってますね?
以前200と言われてて
英文の記事で5000と言及してるトピックがあって
今日本家のDatastore Indexesにも明確な数字の言及はなくなってます
364nobodyさん:2014/09/08(月) 12:24:02.95 ID:???
A,B,C3つのプロパティのあるエンティティをすべての組み合わせで検索するには
AB,BC,CA,ABCのインデックスが必要だと思ったら違うっぽいね
ABCのインデックスも必要ない

どういう時に必要なんですか?
365nobodyさん:2014/09/08(月) 13:46:39.80 ID:???
カスタムインデックスの数の上限と、
1エンティティから発生するインデックスのエントリ数の上限は別物だよ。
366nobodyさん:2014/09/15(月) 17:58:40.92 ID:???
あー カスタムは200か
367nobodyさん:2014/10/03(金) 08:36:00.48 ID:L6uW93jV
>>>a = ['ringo','リンゴ']
>>>print a
[{'ringo':'\xe3\x82'}]とか\u73feとかで表示されますが、これを日本語でちゃんと、'りんご'と表示させるにはどうすればいいですか?


また、階層が深いと[<ringo: ringo object>]のようになったりもしますがこれの対処法も教えてもらえないでしょうか?
368nobodyさん:2014/10/03(金) 08:49:50.90 ID:???
u'リンゴ'
369nobodyさん:2014/10/03(金) 14:15:30.21 ID:???
370nobodyさん:2014/10/03(金) 14:19:36.63 ID:???
マルチしね
371nobodyさん:2014/10/05(日) 23:04:56.41 ID:???
>>369
これ質問者じゃない別の陰険な奴がわざとが貼りまくってるんだぞ
372nobodyさん:2014/10/06(月) 01:25:41.30 ID:???
質問させて
GAEにてDjango使ってWebサイトって公開できるんだよね?
料金はAWSの方が安いとか書かれてたけど
無料でどこまで出来るのかな?
373nobodyさん:2014/10/06(月) 09:36:31.22 ID:???
>>372
Django使ってWebサイトって公開できる
無料でやれる範囲一日200万PV程度(データ量なども関係する)
374nobodyさん:2014/10/06(月) 09:43:26.04 ID:???
補足:無料枠はページの応答速度が重要でさっきのPVは60ms程度
Django使うと1000msくらいはかかるかも
よって目安は12万PV/日
375nobodyさん:2014/10/06(月) 10:05:54.00 ID:???
wordpressがpythonになってくれればなあ
376nobodyさん:2014/10/06(月) 11:15:11.18 ID:???
>>374
ありがと
377nobodyさん:2014/10/06(月) 15:11:38.53 ID:???
でもどうせAWS行くんだろ?
行けよ
もう来んな
378nobodyさん:2014/10/06(月) 16:24:58.66 ID:???
>>375
書き直せば良いやん
379nobodyさん:2014/10/06(月) 17:08:58.80 ID:???
>>378
(σ・∀・)σそれだ!
380nobodyさん:2014/10/08(水) 10:16:02.83 ID:L8w+mBMY
381nobodyさん:2014/10/08(水) 11:54:18.23 ID:???
>>380
マルチ死ね
382nobodyさん:2014/10/10(金) 00:13:39.94 ID:+hT1ZM7P
>>374
応答速度1秒って遅くね
レスポンスは500msec以内に返さないとサクサク感がないって
誰かが言ってたぞ
383nobodyさん:2014/10/10(金) 00:34:16.47 ID:???
誰が言うもクソも、試したら明らかだろ
384nobodyさん:2014/10/10(金) 02:07:35.36 ID:???
GAEでDjango-nonrelを動かそうとしています。
Celeryで非同期処理がしたいのですが、RabbitMQは使えるでしょうか?
385nobodyさん:2014/10/10(金) 12:31:42.10 ID:???
>>382
テンプレにループ埋め込むかデータ書き出して渡すかだけでもちがうだろうな

>>384
cronとTaskQeue使った方がいいと思うよ
http://www.appscale.com/2013/07/17/the-taskqueue-api-with-rabbitmq-and-celery/
386384:2014/10/13(月) 03:12:36.39 ID:???
>>385
遅くなりましたがレスありがとうございます。
なかなかうまく行きませんし今回はTaskQeue使います。
387nobodyさん:2014/10/21(火) 18:00:35.22 ID:no1UJMbX
388nobodyさん:2014/11/06(木) 18:55:59.74 ID:Qn627Vua
Docker対応で激変くる?
389nobodyさん:2014/11/06(木) 18:57:56.24 ID:Qn627Vua
あんまり詳しくないので分からんのだが
Datastoreの呪縛から解き放たれると解釈していいのかな
Elasticsearchによる全文検索や、MongoDBとか使えちゃったりする上に
GAEの特徴であるオートスケールはそのまま、ということでいいのかな
松尾さん
390nobodyさん:2014/11/07(金) 11:05:33.97 ID:???
そ、そんなGAE認めたくないっ
391nobodyさん:2014/11/07(金) 11:59:17.02 ID:???
Docker対応はGAE以外にもAWSもやってるから
結局は安くて使いやすいほうが勝つ、コモディティ商材になったってことかな
392nobodyさん:2015/03/04(水) 17:07:37.38 ID:QUo176Vl
今Google Developers Console重くね?
おれだけかな??
393nobodyさん:2015/03/08(日) 23:20:16.46 ID:cGKFdsF9
今GAEでtweepy使えます?
The Socket API will be enabled for this application once billing has been enabled in the admin console
って言われてこれを解決できないのですが分かる人居ませんか?
394nobodyさん:2015/03/08(日) 23:39:21.45 ID:???
GAEをよく知らない通りすがりだけど
管理コンソールでビリング(支払い設定?)を有効にしたらSocket APIが有効になるよって書いてある
395nobodyさん:2015/03/09(月) 07:54:41.94 ID:???
うちではTweepy使えてるけど、2年前のバージョンだからなぁ。
今の見たらHTTPリクエストがhttplibからrequestsに変わってるんだね。

ちょっとググってみたけど、requestsの最近のバージョンがGAEでは動かなくて
2.1.0にするといいっぽい。

久しぶりにダッシュボード見たけど、Backendも廃止になるんだな。
いまだに2.5のまま放置してるけど、そろそろ2.7に移行するかなw
396nobodyさん:2015/03/09(月) 12:04:47.20 ID:???
うちも未だに2.5のまま
以降準備はほぼ整ってるけど全責任追って移行するのが心理的にめんどくさい
397nobodyさん:2015/03/09(月) 12:28:57.01 ID:5vJeN1rn
>>393
オレオレ改造で使ってる
398nobodyさん
とうとうM/S止めるってメール来たね
てか来てた?
If you don’t take any action these applications will be shutdown on July 6, 2015