CloudFoundry: Java, Ruby o Nodo.js?


Mi è capitato di conoscere il nuovo progetto CloudFoundry di VMware

Se voglio distribuire un'applicazione su CloudFoundry.com, quale lingua è la migliore scelta?

Proprio come Google App Engine, ovviamente, Python è il più maturo mentre Go è il più inmature.

Che ne dici di CloudFoundry?

Il software open source CloudFoundry è scritto in Ruby, ma la pubblicità mette sempre Java prima di Ruby. come " Esegui la tua molla, Rotaie, Nodo.js e Scala applicazione. "Vedi la seguente foto: inserisci qui la descrizione dell'immagine

Significa che il supporto per Java è migliore di Ruby?

Author: DocWiki, 2011-10-03

5 answers

Penso che tu stia leggendo troppo nelle cose riguardanti l'ordine delle lingue. Come la maggior parte delle altre domande che chiedono "quale lingua dovrei scegliere", la risposta ha più a che fare con il tipo di app che stai costruendo e la quantità di esperienza che hai nelle varie lingue rispetto a quale lingua è "la migliore."

 5
Author: Michelle Tilley, 2011-10-03 22:08:27

Come ex membro del team App Engine, ora parte del team Cloud Foundry, concordo con Andrew: usa il linguaggio e il framework che preferisci, lo strumento migliore per il lavoro, Cloud Foundry li tratta tutti allo stesso modo.

Il team di App Engine deve creare collegamenti specifici per la lingua per i servizi Google sottostanti, e di solito fare prima Python, poi Java, quindi Andare, in modo da avere un intervallo di tempo tra quando viene introdotta una funzionalità in Python, a quando scorre verso le altre lingue (anche se ha ottenuto molto meglio di recente come il prodotto matura).

Cloud Foundry espone i servizi ai vari linguaggi/framework utilizzando le interfacce di servizio esistenti di questi framework, automatizza solo il provisioning e il binding del servizio (i parametri di connessione/configurazione non sono più codificati in un file di proprietà, sono forniti da Cloud Foundry in fase di runtime, in un modo specifico del framework). Ad esempio, quando RabbitMQ è stato introdotto in Cloud Foundry, non è stato necessario creare una nuova API per servizio in ogni lingua, sfruttiamo solo le librerie client AMPQ esistenti per ogni lingua/framework.

 3
Author: Patrick Chanezon, 2011-10-17 14:38:36

Il confronto con GAE non è appropriato qui. Una delle differenze tra GAE e CF è che in CF non ci sono API specifiche da utilizzare. Se stai scrivendo un'app RoR, scrivi semplicemente l'app e poi la distribuisci. Stessa cosa se si sta scrivendo una molla o Grails app.

La mia comprensione è che con le integrazioni di base fornite e mantenute da VMware, sono pensate per essere trattate allo stesso modo. Ovviamente, CF è ancora in beta e differenze nei livelli di supporto tra le piattaforme può esistere, ma questo è probabilmente un bug, e non una caratteristica.

Quindi, penso che Brandon Tilley sia in gran parte corretto in quanto dovresti pensare alla lingua/piattaforma più appropriata per la tua app, piuttosto che a ciò che è appropriato per CF.

 1
Author: Andrew Eisenberg, 2011-10-05 05:21:53

In realtà non avrà importanza, usa quello che conosci. La chiave per l'applicazione sarà l'architettura che si imposta, non proprio la lingua o lo stack che si utilizza in cima.

Poi, naturalmente, l'altra risposta è ancora ciò che la maggior parte delle risposte che sono aperte risultato finale, "dipende!" :)

 0
Author: Adron, 2011-12-31 05:40:33

Penso che Java e Spring sarebbero la scelta migliore. Lo farei prima di Ruby o node.js. Spring Source è stato acquistato da VMware qualche tempo fa (un anno fa? due anni?), quindi ha senso.

 -1
Author: duffymo, 2011-10-03 18:08:19