2009-07-18 12 views
8

Şu anda Google AppEngine (GAE) üzerinde Java Web Uygulamamı yapıyorum, ancak çok fazla sınırlama nedeniyle onlar GAE'den geçiş yapmak zorunda kalacağımdan korkuyorlar Glassfish çalıştıran kendi sunucusuna (veya gerekirse başka bir sunucu kurabilirim). Ayrıca Oracle veya MySql veritabanlarını çalıştırmayı planlıyorum. GAE'den sunucuma geçmek için ne yapmam gerekiyor? Kodumu yeniden yazmam gerekiyor mu? Datanucleus'u kullanmaya devam etmeli mi yoksa başka bir şeye mi geçmeliyim? Başka herhangi bir şey?Google AppEngine uygulamasından başka bir sunucuya geçiş yapın

+1

http://code.google.com/p/appscale/ appscale oldu denilen GAE bir açık kaynak uygulaması yoktur gibi senin için çalışmayan gae faktörü? –

+0

1) Dosya Boyutu Sınırı 2) Bazı JEE5 özellikleri 3) Veritabanı (Oracle veya MySql kullanmak istiyorum) 4) Sunucu altyapım üzerinde denetim Bunlar dört ana öğe. Henüz değiştirmek istemediğime karar vermedim, sadece bilgi toplamak ve karar vermek. – Maksim

cevap

4

Uygulamanızı nasıl yazdığınızı bilmeden çok iyi tavsiyeler veremeyiz. Veri deponuzu erişiminizi iş mantığınızdan ayıran bir veri erişim katmanı mı oluşturdunuz? Veya uygulama motoruna özgü nesneleri her yere mi aktarıyorsunuz? Gae kullanıcı hizmetini kullanıyor musunuz? veya memcache?

Yapmanız gereken ilk şey, tüm içe aktarma ifadelerinize bakmaktır. Orada bir com.google.something görüyorsanız, bunu değiştirmeniz gerektiğini biliyorsunuz. Uygulamanızı nasıl yazdığınız hakkında fazla ayrıntı vermediniz, ancak datanucleus hakkında soru soruyorsanız, muhtemelen JDO veya JPA kullanıyordunuz. Bu, veri katmanınızın çoğunu yeniden kullanabileceğiniz anlamına gelir. Değiştirmeniz gereken bir dizi Anahtar alanınız olabilir ve belki de birkaç gae özel ek açıklama olabilir. Muhtemelen işlemleri nasıl ele aldığınızı iki katına çıkarmanız gerekecektir, çünkü bu, GAE gibi varlık gruplarını kullanmayan bir SQL veritabanında farklı olması muhtemeldir.

6

Neden orijinal Google kamp ateşinde verilen bilgileri takip etmiyorsunuz? IBM tarafından DB2 kullanılarak bir AppEngine uygulamasının nasıl çalıştırılacağı hakkında bir sunum yapıldı. Sadece CLASSPATH'daki datanucleus-rdbms kavanozunu düşürdüler, bağlantı URL'sini değiştirdiler vs. Bu PDF http://download.boulder.ibm.com/ibmdl/pub/software/dw/wes/hipods/GAE_Java_Interoperability.pdf

--Andy (DataNucleus)

+1

Vay. Çok havalı. Kullanıcı ve UrlFetch hizmetlerini uyguladılar. Yapılandırma öğelerinin yanı sıra, yalnızca gerçek kod değişiklikleri belirli anahtar türlerini ve değişen içe aktarma ifadelerini değiştiriyor. –

4

ben denemedim ama, sınırlayıcı hangi ana sadece meraktan