2010-08-20 11 views

Antwort

9

Heroku hat alles, was in ihrer Cloud verwaltet und bietet drei Möglichkeiten, maßstäblich: db, dynos und workers. Heroku wird Ihre Bewerbung nicht für Sie skalieren. Es liegt in Ihrer Verantwortung, Einstellungen zu ändern, die steuern, wie viel CPU/Datenbank-Speicher. Ich werde skizzieren, wie Heroku unten funktioniert, aber im Moment beantworte ich die Frage direkt, indem ich sage, dass es zwei Möglichkeiten für Datenbanken mit Heroku gibt: geteilt, dediziert. Dedizierte Maschinen halten Informationen auf einer Maschine, aber Maschinen werden entsprechend aufgemotzt, die Heroku dubs Recheneinheit, während geteilte dbs Maschinen für Datenbanken teilen.

Wenn Sie diese Antwort lesen und nicht über Heroku wissen, ist es wichtiger, sie zu überprüfen als zu lesen.

Zunächst möchte ich sagen, es ist kostenlos, Anwendungen auf Heroku bereitzustellen, es sei denn, Sie möchten Ressourcen hinzufügen. Deployment mit Ihrem git gemacht wie:

  • Heroku
  • erstellen Heroku Master
  • Heroku rake db drücken:

migrieren Whenver Sie Ihre App aktualisieren möchten es drei Dinge:

  • git add.
  • git
  • git push Heroku

begehen Wie dies möglich ist. mit der heroku gem.

Es ist ein bisschen erschreckend, wie viel besser Heroku kümmert sich um die Bereitstellung und Skalierung von Ruby-Anwendungen, so hatte ich auch diese Frage und recherchierte.Es stellt sich heraus, dass es wirklich nur drei Dinge, die Sie wissen müssen, um Ihre Anwendung mit Heroku maßstabs:

Alles, was Sie tun müssen, ist erhöhen Sie Ihre Dynos (im Grunde dünne Prozesse) oder Arbeiter (für verzögerte Jobs), um Ihre Anwendung zu skalieren.

Grundsätzlich gibt es drei Möglichkeiten, um Ihre Anwendung

  1. Choose a DB
  2. Choose how many dynos you want running
  3. Choose how many workers you want running

Dynos und Arbeiter zum Verkauf sowohl über laufen $ .05/Stunde

Dann Sie können aus 5 Datenbankoptionen wählen.

  1. Blosom ist kostenlos bis zu 5 Mb
  2. Koi $ 15/Monat bis zu 20 Gb

Und dann gibt es dedizierte Server für die DB, die wie folgt funktionieren:

  1. Ronin - $ 200/Monat - 1 Berechnung - 2 TB Datenbank max
  2. Fugu - $ 400/Monat - 5 Compu te Einheiten - 2 TB Datenbank max
  3. Zilla - 1600 $/Monat - 20 Recheneinheiten - 2 TB Datenbank max

Das einzige, was zu einem Server gewidmet sein wird, ist Ihre Datenbank, und Sie müssen eine auswählen Möglichkeit dafür. Alles andere ist in der Cloud in verschiedenen Servern wie folgt geschichtet:

  1. HTTP Reverse prox y - kümmert sich um DNS - arbeitet auf Niginz
  2. HTTP Cache - Funktioniert auf - Varnish
  3. Custom Routing Mesh - arbeitet auf Erlang
  4. Dynos - im Allgemeinen dünne proceses
  5. PostgreSQL und Memcached
+0

Tolle Infos, Sam! Es ist mein Verständnis, dass Sie diese Heroku-Einstellungen einrichten und sie bleiben so, es sei denn, Sie gehen zurück in die Einstellungen und optimieren sie. Heroku wird nicht automatisch für Sie skaliert, sagen Sie, wenn Ihre App mit Hintergrundprozessen gesichert wurde und wirklich mehr Arbeiter verwenden könnte, wird Heroku das nicht automatisch für Sie anpassen. – raidfive

+0

@raudfuvem - Sie sind richtig, es liegt in Ihrer Verantwortung, Dynos anzupassen und funktioniert. Das einzige, was Heroku tun wird und es immer noch nicht automatisch ist, überträgt Ihre db auf einen dedizierten Server, aber das nachdem Sie die Änderung vorgenommen haben. – s84

+0

Ich habe über ihre Datenbanken gelesen, geteilt vs dediziert. Nun, eine dedizierte Datenbank ist kein dedizierter Datenbank-VPS-Server richtig? Also, was bedeuten sie, ich bekomme 5 dedizierte Datenbanken. Ist eine gemeinsame Datenbank eine Datenbank, in der meine Tabellen mit anderen gemischt sind? Oder meinen sie Datenbankserver und keine Datenbank? Ich verstehe das Bild nicht. Wenn es in einem VPS ist, bedeutet das nicht, dass ich immer noch die Computerleistung teile, egal ob dediziert oder geteilt? Könntest du zu den technischen Sachen kommen? –

2

Ich denke, das ist die Idee von Heroku - sie übernehmen die gesamte Verwaltung und Einrichtung für Sie. Sie können Ihrer Anwendung Ressourcen hinzufügen, um sie sofort zu skalieren.

2

Aus der Dokumentation Heroku:

Für Rails-Anwendungen, Datenbank-Konnektivität automatisch konfiguriert wird - die App sollte nur arbeiten.

Ihr gemeinsamer Datenbankplan, Koi, ist 15 US-Dollar und bietet 20 GB Speicherplatz. Leistung sollte keine große Sorge sein, obwohl sie nicht immer vorhersehbar ist, da die Aktionen anderer Benutzer sich darauf auswirken können. Was die Skalierung angeht, können Sie mit dem Wachstum Ihrer Website und Ihrer Datenbank problemlos auf einen neuen Plan oder einen dedizierten Datenbankserver upgraden. Stellen Sie sicher, dass Sie Ihre Dynases skalieren, während Ihr Traffic wächst.

Verwandte Themen