23

Ho seguito gli ultimi sviluppi con JavaScript lato server, in particolare Node.js, e mi chiedevo se ci fosse qualche possibilità di utilizzare un tale approccio per sviluppare un'applicazione web di Google App Engine - separatamente o in combinazione con Python o Java?È possibile sviluppare un'app Web di Google App Engine utilizzando Node.js o qualche altro approccio JavaScript lato server?

+2

non sarei affatto sorpreso di vedere Google fornire un runtime V8-based per AppEngine, ma non vorrei pensare che Node.JS sarebbe eseguire su di esso, come Robert note nella sua risposta qui sotto. Le mele generalmente non crescono sugli alberi di arancio. –

risposta

19

node.js utilizza un modello di ciclo di eventi che non si adatta perfettamente al progetto corrente di App Engine.

Tuttavia, ci sono diversi progetti che portano JavaScript a App Engine. Consulta App Engine issue 35 per leggere alcune delle soluzioni. I punti salienti sono: Rhino, Rhino For Webapps, se ti piace Python check out AppengineJS. Ho anche sentito che potrebbe valere la pena esaminare RingoJS.

+5

Buona risposta, Robert. Vorrei solo aggiungere che il numero 35 di AppEngine (http://code.google.com/p/googleappengine/issues/detail?id=35) è pieno zeppo di palpitazioni lussuriose e di suppliche a Google per implementare V8 runtine /Node.JS per AppEngine. La priorità è 'Media'. Non conosco Google, ma dove lavoro, una priorità di Media significa "La richiesta è riconosciuta e verrà ignorata". Sostiene che nessuno dei commenti sulla questione si riferisce all'eccellente punto di Robert secondo cui esiste un disallineamento di impedenza tra il ciclo di eventi di Node.js e l'orientamento delle richieste di AppEngine. –

+0

e la upcomming node.jar di nashorn? –

+0

sembra che AppengineJS.org non sia più in uso. –

2

Tornado può essere eseguito su app engine ed è simile a node.js ma utilizza python e ha anche un buon approccio di rendimento. Ma ci sono limitazioni con l'uso del tornado sul motore dell'app che potrebbe vanificare l'oggetto di usarlo per il tuo progetto. Vedi tornado su github per ulteriori informazioni Io uso entrambi, ma node.js con connect middelware e express.js per rendere il nodo più facile da usare per le applicazioni web semplici.

1

Ora l'opzione migliore è quella di utilizzare Google Compute Engine e Datastore>link here

È possibile utilizzare Google Compute Engine per ospitare i vostri node.js app e utilizzare google-API-nodejs -client per connettersi al datastore:

  1. È necessario creare un progetto in Google API Console, e attivare Compute Engine servizio per esso
  2. Devi abilitare Google Cloud Datastore API (vedi link sopra)
  3. È necessario impostare il set di dati-id (stesso identificatore tuo Cloud Progetto Google ID).
  4. È necessario essere connessi a un'istanza di Compute Engine con gli ambiti datastore e userinfo.email (il supporto node.js per gli account dei servizi basati su certificati non è ancora stato implementato).
  5. È necessario un ambiente node.js funzionante nel computer Compute Engine.
  6. npm installare Google-API-nodejs-client nel vostro strumento da riga di comando di amministrazione

e si dovrebbe essere pronti ad andare

+1

È necessario aggiungere ulteriori informazioni alla risposta. In questo momento è solo un collegamento. se quel collegamento sparisce, la risposta diventerà inutile. –

+1

Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il link per riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. – singles

Problemi correlati