16

Un lot de questions a été interrogé sur le javascript côté serveur sur Google App Engine, mais toutes les réponses traitent des instances Java pour utiliser des interpréteurs JS basés sur Java comme Rhino, Rhino for Webapps, etc.Est-il possible d'exécuter le javascript côté serveur à partir d'une instance * Python * Google App Engine?

Existe-t-il un moyen d'exécuter du code javascript côté serveur sur une instance Python GAE? Je pense quelque chose exactement sur les lignes de pyv8, mais avec un support pour App Engine (ce qui, je suppose, signifierait une implémentation python pure de l'interpréteur). La seule solution que je peux trouver pour le moment est d'utiliser une sorte de piratage grossier pour exécuter côte à côte une instance Java et Python GAE (via des versions différentes) afin qu'ils puissent tous les deux parler au même magasin de données , laissez l'instance Java héberger le code JS, et utilisez une API pour parler back'n'forth. Pas très attrayant. Pas besoin d'entrer dans tous les "ce n'est pas nécessaire, vous ne devriez pas faire cela" discussion - Je sais que ce n'est pas idéal et je suis simplement curieux si cela peut être fait.

+1

Vous n'avez besoin d'aucune sorte de piratage pour exécuter une instance Python et Java de la même application. Il suffit de les télécharger vers différentes versions de la même application. Un seul peut être la version par défaut, mais cela peut ne pas être un deal-breaker. –

+1

J'ai ajouté une précision à mon commentaire "gross hack" - ce n'est pas que les deux versions sont un énorme bidouillage, c'est juste qu'exécuter une instance Java et Python côte à côte pour accomplir cela semble dégoûtant. – kamens

Répondre

3

En ce que je peux trouver: Pas

Je l'ai fait un peu de recherche, mais il semble que personne n'a essayé de mettre en œuvre un moteur pur Python Javascript, et je ne peux pas les blâmer: ce serait une énorme quantité de travail pour très peu de cas d'utilisation (malheureusement, le vôtre en fait partie). Un couple de projets — Grailbrowser et Pybrowser — ont du code Python pour rendre HTML, donc pourraient un jour viser à exécuter javascript, mais ce n'est pas encore commencé, et aucun d'eux ne semble en développement actif.

Le moyen le plus probable serait que Google propose la machine virtuelle Parrot (qui peut exécuter plusieurs langages dynamiques) sur Appengine. C'est une bonne idée, mais je ne retiens pas mon souffle.

2

Ce qui peut fonctionner est d'exécuter Jython (et Rhino) dans une instance Java. Bien sûr, alors vous devrez accéder à tous les services App via l'API Java, pas celle de Python, ce qui serait moche.

Questions connexes