Küçük deprem saati uygulamam için uygulama motorunu denedim
http://quakewatch.appspot.com/
Amacım, uygulama motorunun yeteneklerini görmekti, işte ana noktalar:
- Django ile varsayılan olarak gelmez, kendi web çerçevesine sahiptir, ki bu pitoniktir, Django gibi URL dağıtıcısı vardır ve Django şablonlarını kullanır Yani eğer Django exp varsa. kullanımı kolay bulacaksınız
- Sunucuda uzun süre çalışan herhangi bir işlemi yürütemezsiniz, yaptığınız şey isteğe yanıt vermek ve hızlı olmalıdır, aksi takdirde appengine onu öldürecektir.Yani uygulamanızın çok sayıda arka uç işlemeye ihtiyacı varsa uygulama motoru en iyi yol değildir, aksi takdirde işlem yapmak zorunda kalacaksınız. kendi sunucunuzda
- Quakewatch uygulamamın bir abonelik özelliği var, bu, en son depremleri meydana geldiklerinde e-postayla göndermem gerektiği anlamına geliyor, ancak yeni deprem çözümlerini izlemek için uygulama motorunda bir arka plan işlemi çalıştıramıyorum, burada pingablity.com gibi üçüncü bir servis kullanmak sayfanızdan birine bağlanın ve abonelik e-postasını yürütür, ancak burada da burada çok fazla zaman harcamamaya veya görevi birkaç parçaya bölmediğinize dikkat etmeniz gerekecektir.
- Django'ya benzer modelleme yetenekleri sağlar, ancak arka uç tamamen farklıdır, ancak yeni bir proje için önemli olmamalıdır.
Ancak genel olarak, arka planda işlemeye ihtiyaç duymayan uygulamalar oluşturmak için mükemmel olduğunu düşünüyorum.
Düzenleme: Artık görev kuyrukları toplu işlemeyi veya zamanlanmış görevleri çalıştırmak için kullanılabilir
Düzenleme: Bir yıl boyunca GAE'de gerçek bir uygulama çalıştıktan / oluşturduktan sonra, şimdi bana göre, milyonlarca kullanıcıya ölçeklenmesi gereken bir uygulama yapmıyorsanız, GAE'yi kullanmayın. GAE'de önemsiz görevleri sürdürmek ve yapmak, dağıtılmış doğası nedeniyle bir baş ağrısıdır, son teslim tarihinin aşılmasından kaçınmak, varlıkları saymak veya karmaşık sorgular yapmak karmaşık kod gerektirir, bu nedenle küçük karmaşık uygulamalar LAMP'a bağlı kalmalıdır.
Düzenleme: Modeller, gelecekte sahip olmak istediğiniz tüm işlemler dikkate alınarak özel olarak tasarlanmalıdır, çünkü yalnızca aynı varlık grubundaki varlıklar bir işlemde kullanılabilir ve iki farklı grubu güncelleme işlemini bir kabusa dönüştürür, örneğin, kullanıcı1'den kullanıcı2'ye para transferi aynı varlık grubunda olmadıkları sürece işlem yapmak imkansızdır, ancak onları aynı varlık grubu yapmak sık güncelleme amaçları için en iyisi olmayabilir .... bu http://blog.notdot.net/2009/9/Distributed-Transactions- okuyun on-App-Engine