Frage

Hat jemand eine direkte Erfahrung (gut oder schlecht) unter Verwendung von Jython mit Google App Engine?

War es hilfreich?

Lösung

Um die offensichtliche Frage stellen: Warum würden Sie wollen? (C) Python wird nativ von Google App Engine unterstützt, und jetzt ist ziemlich ausgereift und sehr gut unterstützt.

die ursprüngliche Frage zu beantworten, aber: Ich habe keine persönliche Erfahrung habe, aber ich kann Ihnen einen allgemeinen Überblick über das, was es sein werden:

Der einfachste Weg, wird zur Zeit sein für den Aufruf in Java Jython Unterstützung zu verwenden, um die App Engine Java SDK zu verwenden. Das bedeutet, dass, obwohl Sie Python schreiben werden, es viel wie Java suchen geht, und Sie werden die Java-Dokumentation, anstatt der Python eines verwenden.

Es ist jedoch theoretisch möglich, den Python-SDK in Jython auf App Engine zu verwenden. Das SDK ist reiner Python, und alle die Interaktion zwischen dem SDK und die Laufzeit anhand von RPCs obwohl das google.appengine.api.apiproxy_stub_map Modul erfolgt. Java hat eine äquivalente Schnittstelle in der com.google.apphosting.api.ApiProxy Klasse - siehe den Artikel auf Unit Testing in GAE für einige Details darüber, wie es zu konfigurieren.

In Anbetracht all das hier, wie Sie den Python-API in Jython verwenden:

  1. eine Python apiproxy_stub schreiben, die alle API-Aufrufe einfach nimmt und sendet sie an die com.google.apphosting.api.ApiProxy Klasse.
  2. Bündeln Sie die relevanten Teile des Python-SDK mit Jython app (das meiste davon, leider).
  3. In Ihrem Initialisierungscode, installieren Sie die apiproxy_stub Unterklasse Sie als Handler für alle relevanten Dienste geschrieben -. Datastore_v3, memcache, Benutzer, urlfetch und Bilder

Wenn Sie diese am Ende tut, dokumentieren Sie es bitte und geben Sie den Code - Ich weiß von mindestens einem anderen Benutzer, die daran interessiert sein würde. :)

Andere Tipps

Erstens gibt es Leute, die behaupten, dass Jython, Querces und JRuby ihre Mutter Ausfertigungen schlagen können, wenn es um Geschwindigkeit geht, die Leistung der JVM verwendet wird.

Es gibt jedoch einige widersprüchlichen Informationen über die Geschwindigkeit von Jython. Ein Stapelüberlauf Benutzer behauptet, dass Jython die langsamste von vielen der Sprachen in einem Geschwindigkeitstest beteiligt ist er durchgeführt .

Keine der Performance Fragen wirklich App Engine, sondern nur die JVM im Allgemeinen betreffen.

dieser Artikel von einem Jython Committer geschrieben Alan Kennedy behauptet, dass Jython auf App Engine kombiniert die schnelle Entwicklung der Natur von Python mit den reichhaltigen Bibliotheken in der JVM. Jython ist Python, aber es ist Python, die auf Java-Klassen direkten Zugriff hat.

Ich habe einige Erfahrung mit diesem mit Querces PHP. Ich portiert die JQuery Form Builder-Plug-in Google App Engine. Es ist PHP-Code, aber das PHP in der Lage, direkt Zugriff DAO-Objekte, die in Java geschrieben wurden. Ebenso ist Jython der Lage, das gleiche zu tun.

Alan Kennedy traf auch eine Herausforderung ausgestellt von Nick Johnson wobei er zeigt etwas, das mit Jython auf App Engine ausgeführt werden kann, die sonst schwierig wäre, in reinen Python, XSLT-Transformationen zu erreichen. Er beantwortet die Frage des Durchschlagens in Nicks Antwort: Warum würden Sie wollen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top