/ / GAE: broker MQTT - java, google-app-engine, mqtt, iot, moquette

GAE: broker MQTT - java, google-app-engine, mqtt, iot, moquette

Quindi mi chiedevo se è possibile eseguire un broker MQTT sulla piattaforma di Google App Engine? Non ho trovato alcuna informazione a riguardo (o forse potrei usare parole chiave sbagliate).

Ho il mio GAE in esecuzione su Java, quindi mi piacerebbe andare in direzione di eseguire il broker MQTT su GAE utilizzando un back-end.

MODIFICARE: Ha fatto ulteriori ricerche e sembra che Moquette stia girando su Java. Qualcuno ha esperienza nell'esecuzione di Moquette sul GAE?

EDIT2: Ok, sembra che gli esempi di Moquette siano in esecuzione usando un contenitore OSGi, che non è disponibile in GAE. Alla ricerca di uno script per avviare questo server su GAE.

risposte:

1 per risposta № 1

MQTT è il protocollo su TCP. Per poter eseguire il server MQTT, è necessario essere in grado di aprire un socket di ascolto. Questi non sono ancora supportati nelle normali istanze di AppEngine.

Nota: i backend GAE sono stati sostituiti: ora hai appena fatto istanze automatiche scalate (aka frontend) e istanze ridimensionate manualmente (aka backend).

Torna al tuo problema: VM gestite ha la maggior parte dei vantaggi di GAE (accesso ai servizi), ma esegue una JVM completa, che consente l'ascolto di socket.


1 per risposta № 2

Un'alternativa a Moquette sarebbe anche il HiveMQ broker, funziona anche su Java e può essere facilmente installato. Tutta la documentazione è disponibile Qui. Non l'abbiamo ancora testato su GAE, ma se hai problemi a eseguirlo, puoi chiedere nel forum di supporto.

Aggiornamento: se Peter Knego ha ragione, allora HiveMQ o qualsiasi altro broker MQTT non ha funzionato su GAE.

Piena divulgazione: sto lavorando per l'azienda, che sviluppa HiveMQ.

Saluti,

cristiano


1 per risposta № 3

@Peter Knego ha sicuramente ragione, e tutto ciò che aggiungerei alla sua risposta è che,

Se si riesce a configurare l'applicazione per utilizzare un Runtime personalizzato sul VMS gestito di Appengine and Compute Engine,

allora sarai in grado di eseguire il brooker MQTT perfettamente bene e bene.

Finché si definisce un firewall per consentire una connessione TCP alla porta da cui il broker sta ascoltando.

Di default le porte sono bloccate per ragioni di sicurezza.