2012-06-08 7 views
14

In einer Antwort auf eine andere question, es wird darauf hingewiesen, dass "Apps bereitgestellt auf den gehosteten Servern mit 'Meteor Deploy' noch keine Garantien oder SLAs über Skalierung haben." Das schließt die Möglichkeit aus, ihre gehosteten Server zu verwenden, wenn ich sicher sein will, dass ich sie jetzt vollständig skalieren kann.Skalierung einer Meteor App auf Heroku

Die Antwort weiter stellt fest, dass "Ein Server-Bundle mit 'Meteorbündel' generiert ist im Grunde eine einzige Prozess-App. Es liegt an Ihnen, es zu mehreren Instanzen zu verdrahten, oder wie auch immer Sie automatische Skalierung implementieren möchten."

Nachdem ich das gelesen habe, bin ich immer noch sehr unklar in der Frage der Skalierung. Auf Heroku gehe ich davon aus, dass ich "meteor bundle" Single Process Apps in Dynos ausführen kann. Aber wenn ich viele Dynos benutze, die jeweils ein Meteor-Server-Bundle ausführen, ist Meteor so konzipiert, dass sie so verkabelt werden können, dass sie alle mit den gleichen Daten synchronisiert sind (selbst wenn es eine Verzögerung gibt)?

+0

Ich denke, Meteor speichert es Mongo Instanz im Dateisystem ist. Die Lösung wäre also, eine externe Datenbank zu verwenden. Ich weiß nicht, wie (: –

Antwort

5

Meine eigene Frage beantwortet, hat das Meteor-Team eine roadmap angekündigt, die die Skalierbarkeit Pläne enthält, für die Aufnahme in Meteor 1.0.

+1

Bis es verfügbar ist, können Sie Meteor Cluster - http://goo.gl/2aHJ2 verwenden –

2

Meteor ist immer noch sehr junge Plattform. Vor der Skalierbarkeit würde ich persönlich eine Frage der Sicherheit stellen, da Meteor gerade kein Sicherheitsmodell in der öffentlichen Version hat. Auch keine Erwähnung von Sicherheit in Meteor-Dokumenten, aber Meteor-Team hat bestätigt, dass sie daran arbeiten, und zukünftige Veröffentlichung wird es haben. Schau mal hier: https://stackoverflow.com/questions/10100813/when-can-we-expect-data-validation-and-security-in-meteor

Also ich denke du und ich (für Sicherheitsimplementierung) müssen auf weitere Releases warten und vielleicht bevor 1.0 Skalierbarkeit intern behandelt wird, oder sie sollten eine Dokumentation haben, die erklärt, wie man das macht.

Um eine Vorstellung davon zu bekommen, wie Skalierbarkeit gehandhabt wird und um ein besseres Bild davon zu bekommen, sollte jemand vom Meteor Team über Skalierbarkeit sprechen.

+0

) Yeah - ich war mir des Sicherheitsproblems auch bewusst, aber es gab schon eine Menge Diskussion darüber (und es wurde auch gesagt, dass "das Meiste" des Meteor-Teams ist) Ich arbeite daran und heute gibt es sogar eine Software: https://groups.google.com/forum/?fromgroups#!topic/meteor-core/g4Bsm3yFTe4) Ich bin also ziemlich optimistisch in Bezug auf das Sicherheitsproblem.Aber die Frage der Skalierbarkeit ist wirklich nicht auf den gleichen Grad angesprochen worden, zumindest habe ich es gesehen. Also dachte ich, die Frage wäre es wert, gefragt zu werden. – garyrob

+0

stimme über die Gültigkeit der Frage und Ihre Bedenken hinsichtlich der Skalierbarkeit überein, Würde gerne etwas von Meteor Team zu hören. Ich werde Meteor IRC ausprobieren. – Nachiket

+4

Ab Oktober 2012 ist bei Meteor in Version 0.5.0 ein offizielles Authentifizierungsmodul enthalten und dokumentiert. – yagooar

0

Ich fragte vor kurzem eine ähnliche Frage (Which PaaS would be best for a Meteor JS app that needs to be scalable?), und eine der Antworten erklärt die Heroku Situation sehr gut (ich dachte) - siehe https://stackoverflow.com/a/16468418/2311632. Es wird auch darauf hingewiesen (https://stackoverflow.com/a/16468609/2311632), dass man auf meteor.com bereitstellen könnte. Obwohl die Skalierung immer noch auf der Roadmap ist, haben oder gehen sie vermutlich mit einigen Skalierungsproblemen "in-house" um oder können ihren Service ansonsten auf dem neuesten Stand der Möglichkeiten für die Skalierung von Meteor-Apps halten. Ansonsten könntest du mit EC2 gehen und vertikal skalieren (die Leistung einer einzelnen Instanz erhöhen), bis Meteor die Marke mit offiziellen Skalierungslösungen erreicht. Die Einrichtung mit EC2 ist für mich neu, aber diese Antwort (https://stackoverflow.com/a/16468826/2311632) sieht wie ein guter Ausgangspunkt aus. Ich habe es noch nicht versucht, aber wahrscheinlich bald.

1

Sie können Meteor-Apps in Heroku einsetzen, aber Sie müssen mit 1 Dyno bleiben. Weil Heroku keine WebSockets oder Sticky Sessions unterstützt.

Sie müssen also einen anderen PAAS-Anbieter finden. Nodejitsu ist eine gute Option. Wenn Sie in mehrere Instanzen skalieren möchten, müssen Sie eine Möglichkeit finden, Schreiboperationen zwischen Instanzen zu synchronisieren.

Dann werden Sie müssen Meteor Cluster-http://goo.gl/2aHJ2