AppFog vs. Heroku

Die Auswahl einer Plattform als Dienst (PAAS) für Ihre neue Webanwendung kann eine schwierige und verwirrende Aufgabe sein. Es gibt unzählige Plattformen zur Auswahl, von denen jede ihre eigenen Stärken und Schwächen hat. Um Ihre Entscheidung zu erleichtern, habe ich zwei der besten verfügbaren Optionen ausgewählt. Ich werde in jedem PAAS auf einige der wichtigsten Aspekte eingehen, damit Sie eine fundiertere Entscheidung treffen können.

Anwendungen, die auf Heroku laufen, sind in sich abgeschlossen…

Für das Unbekannte bezieht sich PAAS normalerweise auf einen Dienst, der sich um die zugrunde liegende Hardware und das Betriebssystem kümmert, die zum Erstellen einer Webanwendung gehören. Als Entwickler erlauben uns diese Plattformen, auf einfache Weise Anwendungen zu erstellen oder zu prototypisieren, ohne Hardware zu handhaben oder Server zu konfigurieren.

Nun genug, was PAAS sind, kommen wir zu den beiden ausgewählten Kandidaten: Heroku und AppFog. Auf einen Blick scheinen diese Dienste recht ähnlich zu sein. Beide unterstützen mehrere Sprachen, bieten Datenbanken und Add-Ons und ermöglichen die Ausführung Ihrer Anwendung in der Cloud. Diese Unternehmen verfolgten sich jedoch in Bezug auf die Ausführung sehr unterschiedlich.


Preisgestaltung

Sie denken vielleicht, dass die Preise zwischen diesen beiden Konkurrenten im Grunde gleich sind, aber das könnte nicht weiter von der Wahrheit abweichen.

Die Preise von AppFog beziehen sich auf den Arbeitsspeicher. Sie können beliebig viele Apps und Instanzen erstellen, solange Sie sich innerhalb Ihrer RAM-Grenzen befinden.

Der kostenlose AppFog-Plan verfügt über 2 GB RAM. Der nächste Plan bietet Ihnen 4 GB RAM, jedoch steile $ 100 / Monat.

Ihr RAM wird für alle Anwendungen in Ihrem Konto gemeinsam genutzt. Der minimale Arbeitsspeicher pro Instanz beträgt 128 MB. Sie können also bis zu 16 Instanzen mit 128 MB, eine einzelne Instanz mit satten 2 GB oder irgendetwas dazwischen haben.

Heroku hingegen berechnet Ihnen die CPU-Zeit Ihrer Instanz. RAM ist bei jeder Instanz kostenlos. Ihre Anwendungen teilen sich die Abrechnungszeiten nicht und Heroku bietet Ihnen pro Monat 750 kostenlose Stunden. Dies reicht aus, um eine Instanz für einen Monat auszuführen und noch Zeit zu haben (30 Tage x 24 Stunden = 720)..

Die Kosten für zusätzliche Zeit betragen 0,05 USD pro Stunde, und die Zeit wird in Sekunden gemessen. Wenn Sie also einen Hintergrundarbeiter haben, der seine Arbeit in 15 Sekunden erledigen kann, werden Ihnen nur 15 Sekunden zu dem oben genannten Preis berechnet.

Es ist schwierig, diese Preispläne zu vergleichen, da beide Stärken und Schwächen aufweisen. Vergleichen wir einige Fälle auf beiden Plattformen und berechnen Sie, wie viel Sie bezahlen würden. Ich werde die Preise basierend auf 512 MB RAM AppFog-Instanzen berechnen. Das bekommen Sie von Heroku. Wenn Sie den RAM-Footprint Ihrer App optimieren, erhalten Sie natürlich mehr aus Ihrem Konto.

Datenbankunterstützung ist extrem wichtig und… Heroku ist der klare Gewinner.

  • Szenario 1 - Sie haben eine App, die vier Instanzen für einen ganzen Monat ausgeführt wird. Dies wäre kostenlos für AppFog, aber Sie würden für Heroku $ 107 bezahlen.
  • Szenario Nr. 2 - Sie haben mehr als vier Apps, von denen jede nur eine Instanz ausführt. Auf Heroku wäre dies kostenlos, während dies auf AppFog (5-8 Apps = 100 $, 9-32 = 380, 33-64 = 720 $) summieren könnte.
  • Ich persönlich bevorzuge das Heroku-Preismodell aufgrund des "Pro-App" -Modells, im Gegensatz zu AppFogs "Pro-Konto". Auf diese Weise können Sie sowohl eine Vollzeit-App als auch einen Teilzeit-Hintergrundarbeiter erstellen und dabei die Grenzen des freien Plans einhalten. Natürlich müssten Sie für eine App bezahlen, wenn sie populär wird. Vergleichen Sie das mit AppFog, wo Sie letztendlich anfangen müssen, etwas Bargeld auszugeben, bevor Sie die Nachfrage abschätzen.

    Bitte beachten Sie, dass dies nur meine persönliche Meinung ist. Ich baue gerne beliebig viele Apps und Tools in meiner Freizeit, ohne dafür Geld zu bekommen, und Heroku ist dafür besser geeignet. Wenn Sie jedoch nur eine App erstellen möchten oder Instanzen mit mehr als 512 MB RAM benötigen, ist AppFog möglicherweise die bessere Lösung.

    Die Preise von Heroku sind zudem vorhersehbarer und Sie können leicht berechnen, wie Sie Ihre Anwendungen rentabel machen.

    Wenn es um Support geht, ist AppFog der klare Gewinner.

    Stellen Sie sich vor, dass eine Instanz Ihrer App 100 Kunden behandeln kann. Bei 36 USD / Monat pro Instanz können Sie die Kosten einfach auf die Kunden aufteilen und einen nachhaltigen Preis erzielen, der mit Ihrer Anwendung skaliert.

    AppFog ist zwar etwas billiger, aber die Zahlungsschwellen scheinen zu weit auseinander zu liegen. Wenn Sie das obige Beispiel verwenden, wenn Sie von acht auf neun Instanzen wechseln, müssen Sie für eine Instanz zusätzlich 180 US-Dollar zahlen. Andererseits zahlen Sie nichts, bis Sie 33 Instanzen erreicht haben. Dann verdoppeln Sie Ihre Rechnung im Grunde von 380 auf 720 Dollar. Deshalb zahlen Sie manchmal für jede Instanz über 42 US-Dollar und zu anderen Zeiten zahlen Sie jeweils weniger als 12 US-Dollar.


    Projektmanagement

    Dies ist ein weiterer Bereich, in dem sich Heroku stark von AppFog unterscheidet. Auf Heroku laufende Anwendungen sind in sich abgeschlossen. Alle Worker- und Web-Instanzen sind in einem Git-Repository zusammengefasst. Dies funktioniert, indem Sie Ihre gesamte Anwendung (Webserver, Hintergrundarbeiter, Skripte usw.) in einem Git-Repository ablegen und eine Procfile. Hier weisen Sie den verschiedenen Instanzen Namen zu und wie sie gestartet werden. Wenn Sie beispielsweise ein Python-Projekt haben, das als Webinstanz dient, und eine Datei für einen Hintergrund-E-Mailer, könnte Ihre Procfile wie folgt aussehen:

 web: python site.py emailer: python emailer.py

Das erste Wort jeder Zeile ist der Name der Instanz. Der zweite Teil (nach dem Doppelpunkt) ist der Befehl zum Ausführen der App. Mit einem Procfile können Sie jede beliebige Instanz über die Site, die Befehlszeile oder die API skalieren.

AppFog ist ein bisschen anders. Sie müssen für jeden Hintergrundprozess eine separate "App" erstellen, damit sich Ihre App nicht vollständig zusammenfügt. Darüber hinaus werden alle Ihre Apps auf einem Konto gemischt. Wenn Sie beispielsweise mehrere Apps in Heroku haben, würde Ihre App-Struktur in etwa so aussehen:

 App1-Web-Instanz-Worker_1 Instanz-Worker_2 Instanz App2-Web-Instanz-Worker-Instanz

Dies ist unkompliziert, aber vergleichen Sie das mit AppFog:

 App1_web App1_worker_1 App1_worker_2 App2_web App2_worker

Meiner Meinung nach ist der Ansatz von AppFog weniger klar, aber dies beruht auf der Tatsache, dass AppFog-Ressourcen von mehreren Apps gemeinsam genutzt werden.


Datenbanken

Datenbankunterstützung ist äußerst wichtig, und zwischen diesen beiden PAAS ist Heroku der klare Gewinner. Heroku bietet nur PostgreSQL an, aber die native PostgreSQL-Datenbank ist eine hervorragende Datenbank in Produktionsqualität. Es ist nicht etwas, was sie zusammen schlagen. Sie bieten es sogar als eigenständiges Produkt an.

AppFog hingegen unterstützt MongoDB, MySQL und PostgreSQL. Leider befinden sich MongoDB und Postgres noch in der Beta-Phase. AppFog schreibt für alle Datenbanken eine Beschränkung von 100 MB vor. Beachten Sie jedoch, dass AppFog sagt, dass dies nur vorübergehend ist. Sie sind derzeit dabei, weitere Datenbankeinstellungen hinzuzufügen.

Wenn Ihre Anwendung klein ist oder Sie sich nicht wirklich um Ausfallzeiten oder Speicherplatzbeschränkungen kümmern, können Sie sich für PAAS entscheiden. Wenn Sie jedoch eine Produktionsanwendung erstellen und ein zuverlässiges Datenbanksystem mit vielen Funktionen benötigen, sollten Sie die Postgres-Datenbanken von Heroku verwenden, selbst wenn Sie planen, AppFog für Ihr Hosting zu nutzen. Wie bereits erwähnt, bietet Heroku ihre Datenbank als eigenständiges Produkt zu einem sehr günstigen Preis an.


Addons

Beide Dienste bieten viele der gleichen Add-Ons, aber Heroku bietet erheblich mehr, da sie länger im Geschäft sind als AppFog. Heroku bietet über 100 Add-Ons an, während AppFog zum Zeitpunkt dieses Wring etwa 13 anbietet. Meiner Meinung nach sollte dies ein entscheidender Faktor sein? Nicht wirklich. Es ist sicherlich schön, einen Drittanbieter-Dienst mit einem Klick einzurichten, aber Sie möchten sich direkt für das Add-On anmelden, anstatt Heroku oder AppFog zu verwenden. Dadurch erhalten Sie manchmal bessere Funktionen und klarere Preisinformationen.


Unterstützung

Wenn es um Support geht, ist AppFog der klare Gewinner. Heroku gibt es schon eine Weile, und Sie können wahrscheinlich ein paar Informationen dazu finden, was Sie online benötigen, aber ihre Unterstützung fühlt sich überholt an. Sie müssen zuerst ihre Wissensdatenbank durchsuchen und erst dann können Sie ein neues Ticket öffnen. Auf der anderen Seite bietet AppFog Live-Chat-Support. Es ist schwer, sofortige Ergebnisse zu schlagen.

Heroku bietet 24x7-Support… aber nur zu einem Preis. Sie müssen für das "geschäftskritische" Paket bezahlen. Ich sage nicht, dass Heroku schlechte Unterstützung hat, aber ich bin nicht sicher, ob Sie mit sofortigen Antworten konkurrieren können.


Zusammenfassung

Um Ihnen die Entscheidung zu erleichtern, habe ich die folgende Tabelle erstellt, um alle oben genannten Punkte zusammenzufassen:

Bedeutet das, dass Sie mit Heroku gehen sollten, weil es 3,5 / 5-mal gewonnen hat? Nicht unbedingt. Alles oben ist wahr, aber können Sie einen Gewinn bei Add-Ons als wichtig für einen Preisgewinn vergleichen? Letztendlich können sich nur Sie je nach den Anforderungen Ihrer Anwendung entscheiden.

Hinterlassen Sie wie immer einen Kommentar, wenn Sie Fragen oder Anregungen zu Heroku oder AppFog haben. Danke fürs Lesen.