2013-02-17 3 views
15

Vorrei chiedere informazioni sulle migliori pratiche nella creazione di backend su Meteor.Meteor js come front-end, che uso per il back-end?

Io uso Meteor js come Front End e sto pianificando di utilizzare una serie di framework apache/php/yii/YiiMongoDbSuite su un'altra porta come back-end (pannello di amministrazione).

Forse qualcuno mi consiglia il miglior practive per la facile creazione di parte amministrativa dell'applicazione Meteor?

risposta

27

Se hai già creato il tuo back-end in PHP/Rails, ecc. Potresti considerare un client DDP o REST per inoltrare i messaggi tra Meteora e il back-end. DDP ha un paio di vantaggi rispetto a REST

è una connessione aperta si potrebbe anche ottenere aggiornamenti in tempo reale.

Tuttavia non sono sicuro di alcun client DDP per PHP. Ci sono una manciata:

Si potrebbe utilizzare per comunicare REST troppo , ma ti mancheresti un sacco di funzionalità. Con DDP è possibile accedere a Meteor.methods ed effettuare abbonamenti abbastanza facilmente.

Infine, è possibile connettersi direttamente a mongodb e inserire le modifiche. Meteor le gestirà entro 10 secondi.

Ma perché non utilizzare Meteor stesso come back-end? L'utilizzo di un'istanza di Meteor seperat potrebbe rendere più sicura l'area di amministrazione. Con Meteor come back-end, sarebbe molto più facile da mantenere, avresti il ​​codice compatibile da condividere tra i due. È possibile utilizzare Meteor.connect per accedere all'istanza del client.

Se la tua motivazione è la sicurezza, puoi farlo. Non c'è quasi alcun vantaggio nell'usare una lingua separata e impilare quando Meteor lo rende già così facile.

UPDATE: Meteor 0.7.0 ha introdotto il coding su oplog in modo da non dover attendere 10 secondi per la visualizzazione degli aggiornamenti. Sarebbero istantanei come se si trattasse di una meteora.

+0

grazie per la tua risposta, ho deciso di creare il backend su Yii, perché ti dà le operazioni CRUD dalla scatola ed è veloce nello sviluppo. I collegamenti DDP sono molto utili. Poco ritardo in 10 secondi non è critico. –

+8

Ho cambiato decisione, ora sto scrivendo il backend su Meteor. Grazie –

+1

yes Meteor è un framework a stack completo, che funziona sia sul client che sul server. Non ha senso per me usare la meteora solo sul front-end. –

0

Meteor ascolta direttamente il database MongoDB, quindi eventuali modifiche apportate aggiorneranno automaticamente l'applicazione. Ciò significa che se vuoi scrivere su MongoDB da PHP puoi farlo, e quindi meteor rileva automaticamente le modifiche e aggiorna la fine del font.

Credo che funzionerà anche con numtel's meteor mysql package. Ciò rende super facile se si desidera iniziare a utilizzare Meteora per i componenti che devono essere aggiornati in tempo reale o migrare lentamente su un progetto.

Attualmente stiamo provando questo per i nostri sistemi di notifica in tempo reale. Pensavo che avremmo dovuto imparare a usare DDP, ma in realtà è facile come avere entrambi i sistemi che ascoltano lo stesso DB.