Google App Engine 2アプ目
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2009/05/30(土) 12:40:02ID:tuYY7oEnGoogle App Engine
http://code.google.com/appengine/
■過去スレ
Google App Engine
http://pc11.2ch.net/test/read.cgi/php/1207754942/
■参考サイト
App Engine ギャラリー
http://appgallery.appspot.com/
ドキュメント
http://code.google.com/appengine/docs/python/overview.html
0574nobodyさん
2009/11/18(水) 16:00:17ID:???に
-----
App Engine には Python Cryptography Toolkit のカスタム バージョンが付属しており、
これは PyCrypto とも呼ばれています。
App Engine に付属するバージョンは pycrypto 2.0.1 をベースにしています。
これは最新バージョンではありませんが、その大半は新しいバージョンとの互換性があります。
-----
とあるけど、SDK 1.2.7 の中には見つからないんですけど。
import Crypto とかしてもエラーになるし。
だれか教えて!
0576nobodyさん
2009/11/18(水) 23:14:16ID:???不安定ならキャッシュくらいにしか使えないね
0577nobodyさん
2009/11/19(木) 00:17:46ID:???0578nobodyさん
2009/11/19(木) 00:23:18ID:???0579nobodyさん
2009/11/19(木) 00:33:02ID:???単なるキャッシュなので、
get: 参照して、無ければDB的な物から引いて更新
set: キャッシュ更新して 本体書き込み
同時アクセス考慮するならDB的な物をロックするとか
トランザクションするならさらに制御が複雑に
最近のwebサービスだと、セッション用に素のmemcached使わずに永続的な実装にして使ってる。
0581nobodyさん
2009/11/20(金) 12:31:13ID:???そもそもサイトの静的リソース(画像、CSS,Javascript、Flashとか)を
別アプリケーション立ててそっちにもっていくのは規約に反するのかな?
0582nobodyさん
2009/11/20(金) 12:48:08ID:???0583nobodyさん
2009/11/20(金) 13:46:47ID:???0584nobodyさん
2009/11/20(金) 14:28:37ID:???アカウント内なら問題無さそう
むしろ一つのアプリケーションに複数のアカウントを関連付ける機能があるのにこれはひどい
0585nobodyさん
2009/11/20(金) 17:54:31ID:???>同時に複数のアカウントでアプリケーションを操作するなどして
というのはその方法でCPUやDataStoreやMail/Dayのquotaの制限を突破しちゃだめっていう意味だと思う
0586nobodyさん
2009/11/20(金) 23:45:27ID:???ドメイン変わるし。
0587nobodyさん
2009/11/21(土) 04:55:21ID:???当たり前か。
アカウント1つでもだめだろな
0588nobodyさん
2009/11/21(土) 05:34:15ID:???・・・あれ?
0589nobodyさん
2009/11/21(土) 06:56:33ID:???0590nobodyさん
2009/11/21(土) 12:59:08ID:???0591nobodyさん
2009/11/21(土) 13:10:56ID:???0592nobodyさん
2009/11/21(土) 13:16:56ID:???0593nobodyさん
2009/11/21(土) 19:23:31ID:???0594nobodyさん
2009/11/21(土) 20:04:56ID:???0595nobodyさん
2009/11/26(木) 09:34:16ID:???0596nobodyさん
2009/11/26(木) 16:54:02ID:7zJTiiD00597nobodyさん
2009/11/28(土) 19:48:27ID:???今じゃ知り合いの失踪も自殺も体験した
0598nobodyさん
2009/11/29(日) 16:23:00ID:???auto_nowにしてたフィールドが9時間進んでいて驚いた
0599nobodyさん
2009/11/29(日) 17:11:15ID:???0600nobodyさん
2009/12/02(水) 11:07:11ID:???GAEで作ったアプリてローカルでも運用できるもんなんでしょうか?
wikiみたいなのを作った場合を想定していて、
例えば外部公開用の他に、
自分用でかつネットつないでない時も使えないときも使いたい場合、
どうしたものでしょうか?GAEの
ローカルでもちゃんと動いてくれるものでしょうか?
感覚的にRailsのアプリのBTS、RedmineをWindows上でproductionモードでmongrelでローカルにて動かすような感じです。
0601nobodyさん
2009/12/02(水) 11:40:32ID:???0602nobodyさん
2009/12/02(水) 11:58:20ID:???自由度無くて詰んだら嫌なのでEC2に決まりかけてたのですが、
mysqlをスケーリングしてうんぬんはやはり面倒なのでGAEがいいよなあと。
いまどきのWebサービスを開発するにあたって
GAEでどうしてもできないことはなにがありますでしょうか。
たとえば、
-全文検索サーバをインストールして使う
-数時間かかるバッチ処理
-HTTP以外の通信
-SQLでかんたんにできること JOINとか?
-巨大なファイルをあつかう1GB以上とか
-データベースの定期ダンプ
-複雑な画像処理 ImageMagick
ほかにありますでしょうか。アドバイスお願いします。
これから要件まとめてなにか気がついたら私もまたカキコします。
これ
http://code.google.com/p/appengine-jruby/wiki/GettingStarted
つかってGAEでRubyというのも良いですね。
ただ、CPUが無駄遣いだというカキコがちょっと前にありましたけども。
0603nobodyさん
2009/12/02(水) 12:40:43ID:???0604nobodyさん
2009/12/02(水) 13:24:04ID:???26 EC2 Compute Units (8 virtual cores with 3.25 EC2 Compute Units each),
1690 GB of instance storage, 64-bit platform
にmysql載せればいくらでも相当無理しても大丈夫そうだ。
ディスクの速度が不明だな。書き込み速いのかな。
スレ違いでした。すまん。
0605nobodyさん
2009/12/02(水) 13:28:35ID:???鬼のようなPVのサイトだから、独自ドメインを使うと思うんだけど、
なんか独自ドメインだとSSLが使えないらしいんだよね。
たとえば http://www.example.org/admin/ というURLで管理者情報をいじくるページをつくったとして、
これを https にしたいとしても、できないんだってさ。
独自ドメインじゃなく xxxxx.appspot.com ならSSL使えるらしい。
これってどうよ?俺的には致命的なんだけど、だれか回避策しらんかね?
あと、www.example.org はOKだけど example.org (naked urlというらしい)は使えないとか。まあこの制限は我慢できるか。
0606nobodyさん
2009/12/02(水) 13:32:29ID:???0607nobodyさん
2009/12/02(水) 13:33:04ID:???>たとえば、
>-全文検索サーバをインストールして使う
>-数時間かかるバッチ処理
>-HTTP以外の通信
>-SQLでかんたんにできること JOINとか?
>-巨大なファイルをあつかう1GB以上とか
>-データベースの定期ダンプ
>-複雑な画像処理 ImageMagick
これ全部やりたいってことなら、GAEじゃ無理だね。
データベースの定期ダンプとか無理だろ。
頑張ってMySQLをスケーリングするか、memcachedを使いたおせ。
0608602
2009/12/02(水) 15:51:49ID:???これから要件を洗い出すのですが、それ全部必要なわけではないです。
私の知識の範囲でGAEで出来ないことリストです。
GAE地雷リスト?
>>603
PV課金だからってことですね。EC2なら工夫次第でPV単価安くできる。
>>605
ありがとうございます。
(追加)
- SSLを自由に使えない
- 使えるドメインに制限あり(naked url)
>>604
"Amazon Relational Database Service"ってのを見つけました。
mysqlのおもりをお任せ出来ちゃうのかもしれません。
0610nobodyさん
2009/12/03(木) 00:14:17ID:???0611nobodyさん
2009/12/03(木) 04:30:44ID:???xxx.appspot.com で使ってたけど
SSL にも色々変な制限あるみたいで
xls を出力するプログラム(hogehoge)をうpしたら
http://xxx.appspot.com/hogehoge はダウンロード出来たのに
https://xxx.appspot.com/hogehoge ではダウンロード出来なかったり
SSL の意味無いやんって
GAE 使うのやめたよ
0612nobodyさん
2009/12/03(木) 06:32:27ID:???ログインページはSSLでないと信用できない、という場面もある。
仕事のシステム作るような場合だと、さすがにSSL必須だし。(SSLなくても大丈夫って顧客だますの?)
回避策ないかね。
0613nobodyさん
2009/12/03(木) 06:33:25ID:???この辺どうやってんだろ、気になるな
0614611
2009/12/03(木) 07:31:10ID:???いや、ログインページだけなら SSL に出来るんだ
http://xxx.appspot.com/fugafuga.gif
https://xxx.appspot.com/fugafuga.gif
なんかも問題ないし
HTML だけ出力するプログラム
http://xxx.appspot.com/mogamoga
https://xxx.appspot.com/mogamoga
とかも問題なかったのに
>>611
の条件だけダメだったりするんだ
0615nobodyさん
2009/12/03(木) 07:33:45ID:???0618nobodyさん
2009/12/03(木) 17:57:10ID:???0620nobodyさん
2009/12/04(金) 09:21:38ID:???http://www.itmedia.co.jp/enterprise/articles/0912/04/news018.html
これでnaked domainを指定のサブドメにリダイレクトできるようにならないかな?
0621nobodyさん
2009/12/04(金) 09:55:26ID:???0622nobodyさん
2009/12/04(金) 10:18:03ID:???0623nobodyさん
2009/12/04(金) 18:55:33ID:???GAEにwikiを設置したいんですが、使えるwikiアプリをご存知でしたら教えてください。
・PythonでつくられたwikiでGAEで動くもの
・JavaでつくられたwikiでGAEで動くもの
Quercus(PHP in Java)を使ってGAE上で動くPHPのwikiでもいいです。
Pukiwikiのファイルの書き込み部分を、GAE上ではBigTableに書き込むように改造するのは大変でしょうか?
0625nobodyさん
2009/12/04(金) 19:08:22ID:???0626nobodyさん
2009/12/04(金) 19:21:43ID:???0627nobodyさん
2009/12/04(金) 19:21:43ID:???0628nobodyさん
2009/12/04(金) 20:20:21ID:???1日100万PVのアクセスがあっても対応できるGAEで、まとめwikiを作りたいんです><
>>625
勉強するんで、作り方教えてください><
・PukiwikiをGAE用に改造する
・Quercus(PHP in Java)で動かす
この改造路線でよろしいでしょうか?
(JavaとPHPは使えます。Pythonはこれから勉強する予定)
ちなみに、改造したコードはどこにおけばいいですか?
よく分からんけど、Google CodeとかGitHubという場所にアップロードすればいいんですかね?
ttp://ja.wikipedia.org/wiki/OSS%E3%83%9B%E3%82%B9%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%81%AE%E6%AF%94%E8%BC%83
0630nobodyさん
2009/12/04(金) 20:29:05ID:???探せばGAEで動くように移植した人とかいるかもね
0631nobodyさん
2009/12/04(金) 20:43:43ID:???MionMoinを調べてみます!
<擬似ファイルシステム>
BigTabelに、[AlterFile]というテーブルを用意する。
カラムは、(1) [FileName](=ファイル名を保存する)と、(2) [FileData](=ファイルの中身)がある。
従来のファイル操作関連の関数を、BigTableに書き込む関数でラップするかんじですかね?
0632nobodyさん
2009/12/04(金) 22:50:02ID:???FileCTime
FileATime
FileMTime
はあった方が良いだろう
0633nobodyさん
2009/12/04(金) 22:51:03ID:???FileOwner
なんかもいるんじゃないかな
0634nobodyさん
2009/12/05(土) 01:16:34ID:???0635nobodyさん
2009/12/05(土) 03:10:19ID:???0636nobodyさん
2009/12/05(土) 08:06:48ID:???Pukiwikiは全ファイルなめるような操作あったような気がするから、
記事が1000件超えたらまずそうな気がするw
あと、何するにしても日本語検索を自前で実装しないといけないから注意。
サイトマップ作ってgoogleにindexさせて放り投げてもいいけど
0637nobodyさん
2009/12/05(土) 08:10:58ID:???feature requestsはでてるみたいね。
FeatureRequests/GoogleAppEngineCompatibility - MoinMoin
http://moinmo.in/FeatureRequests/GoogleAppEngineCompatibility
0638nobodyさん
2009/12/06(日) 21:30:52ID:???ここ一週間GAE+PYTHONの勉強をがんばって
2chライクの掲示板とか作ってみたけど
なんか疲れた。
もうちっと面白いアイデアがないもんかねえ
0639nobodyさん
2009/12/06(日) 21:43:18ID:???0640nobodyさん
2009/12/06(日) 22:59:48ID:???肝心のしゃべらせる内容が思いつかないw
0641nobodyさん
2009/12/06(日) 23:17:48ID:???適材適所。
0642nobodyさん
2009/12/07(月) 01:51:30ID:???http://eiichirouchiumi.blogspot.com/2009/11/google-app-engine.html
Acid HouseというGAE/Jのフレームワークで、エンティティグループをまたいでの
トランザクション処理ができるらしい
これが使えるとかなり助かるし、結構画期的だと思うんだけど
0643nobodyさん
2009/12/07(月) 11:44:19ID:???実は、Low-level API なんかをうまく使って対応する方法が色々とあるんですが、Acid House を使うと、このオペレーションを1トランザクションで行うことができるので、すごく楽です。
だってさ。
LowLevelAPIで何とかなるなら標準でなぜサポートされていないんだろ。
0644nobodyさん
2009/12/07(月) 12:27:45ID:???なるべくボットっぽくないボットを作って、followerを一杯釣るのにいきがいを感じるのはどうだろうか。
はてぶのホッテントリ(http://b.hatena.ne.jp/hotentry)のURLに対して、
適当にこれまたはてぶのコメントからスターがたくさんついたコメを引っ張ってきて、ちょっと改変してつぶやくとかどうだろうか?
また、なるべくボット臭を消すために、たまにはてブ以外のこともつぶやく。
・http://buzztter.com/ja 話題をから拾ってきて適当に発言。〜〜わろた、〜〜てなんだこれ?等
・http://twitter.com/now_ から拾ってきて、〜〜なうと発言
・http://twitter.com/bombtter や http://twitter.com/bombtter_long から拾ってきて〜〜爆発しろ!
APIや情報ソースとして使えそうなサービスと連携して時事をつぶやけばいいと思う
0645nobodyさん
2009/12/07(月) 12:29:03ID:???はてぶホッテントリのURLミスった
http://b.hatena.ne.jp/hotentry
0647nobodyさん
2009/12/07(月) 16:26:13ID:???0648nobodyさん
2009/12/07(月) 18:25:42ID:???0649nobodyさん
2009/12/07(月) 20:03:03ID:???パイソンじゃ無理なの?
0650nobodyさん
2009/12/07(月) 22:09:43ID:???コミットの途中でクラッシュした時のことが考えられてないし、整合性の問題がある
箇所がいくつもあったり、競合が発生した場合のひどいパフォーマンスとか
とにかく問題が多すぎて、たぶん使ったら大変なことになる
0651nobodyさん
2009/12/08(火) 03:17:44ID:???>のような「複数エンティティ・グループをアトミックに更新する」方法がありません。
>実は、Low-level API なんかをうまく使って対応する方法が色々とある
「ローレベルAPIならアトミックにできる」とも読めてしまうけど、そういうわけではないってこと?
0652nobodyさん
2009/12/08(火) 10:24:42ID:???するとロック範囲も全体なので並列処理できない。スケールしない。
すると出てくる手法はなにがあるのでしょうか。
分散トランザクションとか2フェーズコミットとか?
ジャーナリングファイルシステムみたいにまず入出金イベントentityを作ってあとから各口座に反映させる?
ちなみに銀行アプリのentitygroupは口座ごとに分けて残高entityをrootにして入出金ログentityを子にするので考えています。
0653nobodyさん
2009/12/08(火) 11:13:10ID:???BASEトランザクション
・Basically Available
・Soft-State
・Eventual Consistency
ACIDとは、別の概念が、クラウドでは出てきている。
0654nobodyさん
2009/12/08(火) 12:49:57ID:???そもそもAcid HouseではLow Level APIは使ってない
内部でJDOのPersistenceManagerを複数生成して、それぞれ別のトランザクションを
開始しているんだけど、どうもデータストアが提供するこの機能のことを指して
Low Level APIと言っている気がする
本来のLow Level APIはJDOに比べて速度が速くて自由度が若干高いというだけで
機能自体は変わらないはず
0655nobodyさん
2009/12/08(火) 12:51:42ID:???Song of Cloudでもその話題を扱ってますね
送金のトランザクション処理パターン
http://songofcloud.gluegent.com/2009/11/blog-post_18.html
分散トランザクション処理の最適化
http://songofcloud.gluegent.com/2009/11/blog-post_24.html
0657nobodyさん
2009/12/08(火) 23:18:02ID:???銀行システムでも造るのか
0659nobodyさん
2009/12/09(水) 00:54:51ID:???>>655
ありがとうございます。やろうと思えばできるのですね>トランザクション
datastoreはindexが更新されるのに若干タイムラグがあるので
そもそもEventual Consistencyではありますよね。
>>657
課金とかポイントの使用とか
0660nobodyさん
2009/12/09(水) 08:54:10ID:???例えば銀行だとAからBに振込んだときに、
A銀行で金減らす、B銀行で金増やす処理をちゃんと途切れずに行うってことで良いのかな
0661nobodyさん
2009/12/09(水) 09:31:44ID:???途中でエラー起きた!とかなってもちゃんとその操作を行う前の状態に戻れるように
何したか記録してあるみたいな。
0662nobodyさん
2009/12/09(水) 10:12:17ID:???それは、ロールバック(UNDO)・セグメントという更新前のジャーナルの概念。
それだけでなく、REDO・ログという更新後のジャーナルの概念と両輪になっている。
ロールバックに対して、ロールフォワードという機能。
ACID特性を、実現するために、UNDO/REDO両方を備えるのが通常。
たくさん更新してコミットしない間は、UNDOセグメントが多く使われちゃう。
0663nobodyさん
2009/12/09(水) 15:44:37ID:???ところでトランザクションでサポートされてたとしても
通帳的なデータは作ったほうがいいんじゃまいか
0664nobodyさん
2009/12/09(水) 16:12:32ID:???金曜日の午後3時以降に振り込むと
月曜の午前8時までは
A銀行で金が減って
B銀行にはまだ金が増えない状態になりますが
よろしかったでしょうか?
0666nobodyさん
2009/12/09(水) 21:48:58ID:???>にちゃんと2つ以上のDB書き込み
板用とスレッド用のDB2つ使った2chのログ鳥アプリ作ってる最中だったからびびった
0667nobodyさん
2009/12/09(水) 23:32:49ID:???0668nobodyさん
2009/12/10(木) 06:42:01ID:???0669nobodyさん
2009/12/10(木) 06:53:38ID:???横から質問なんだが
土日が月末で利息の勘定月だった場合
A銀行の預金の利息は減った金額に対して計算されるのか
それとも減る前の金額に対して計算されるのかどっち?
0670nobodyさん
2009/12/10(木) 08:33:36ID:???0671660
2009/12/10(木) 22:13:38ID:???なんか安心したわw
頑張ってGAEで何か作ろう
0672nobodyさん
2009/12/10(木) 22:18:13ID:???0673nobodyさん
2009/12/10(木) 23:44:59ID:???からめ手も使って勝負しないと、きついぞ。
変な仕様で作りこんでも、運用できなくて没。
■ このスレッドは過去ログ倉庫に格納されています