Google App Engine - Wann es zu verwenden, wenn nicht zu?

8

Es ist mir immer noch unklar, ob ich Google App Engine zur Bereitstellung einer kommerziellen Webanwendung verwenden soll oder nicht.

Google scheint geschäftliche Unterstützung zu bieten.

Ссылка

Kann jemand auflisten, wann ich Google App Engine verwenden soll und wann ich es nicht für eine Webanwendung verwenden soll

    
JerryK 01.08.2010, 22:52
quelle

2 Antworten

16

Die Frage ist überraschend einfach zu beantworten, nachdem ich ein paar Wochen lang mit meinem Projekt auf Google Engine gestochen habe. Sie sollten es verwenden, wenn:

  • Sie können nicht aufgefordert werden, einen Server einzurichten
  • Sie wollen sofort für nahezu unbegrenzte Skalierbarkeit
  • Ihr Traffic ist spikey und eher unberechenbar
  • Sie haben keine Lust, sich um Ihre eigenen Serverüberwachungstools zu kümmern
  • Sie benötigen eine Preisgestaltung, die zu Ihrer tatsächlichen Nutzung passt und nicht zeitschlitzbasiert ist
  • Sie sind in der Lage, lange Aufgaben in 30-Sekunden-Stücke zu teilen
  • Sie haben die Fähigkeit / Willen / Wunsch, mit noSQL zu arbeiten und sich mit deren Folgen auseinanderzusetzen
  • Sie können ohne direkten Dateisystemzugriff arbeiten

Sie können es also praktisch für alles verwenden, besonders für Websites. Das einzige, wofür es sehr schnell zu teuer wird, sind große Hintergrundprozesse. Wenn Sie ein Hardcore-Zahlen-Crunching rund um die Uhr machen, ist es besser, irgendwo einen eigenen Server zu benutzen, weil kein Cloud-Service wirklich dazu in der Lage ist.

Aber denken Sie daran, wo sonst bekommen Sie eine Architektur, die 10+ Anfragen pro Sekunde für 10 Dollar pro Monat laden kann?

Grundsätzlich läuft es darauf hinaus: Wenn Sie sich auf die Entwicklung Ihres Codes konzentrieren wollen, nicht auf Ihre Serverarchitektur. GAE ist für Sie. (Im Gegensatz zu Amazon, das sich eher wie ein schickes VPS verhält)

    
Swizec Teller 01.08.2010 23:29
quelle
0

Ich kann Ihnen nicht wirklich sagen, ob Sie App Engine verwenden sollten, ohne etwas darüber zu wissen, was Sie mit Ihrer Webanwendung erledigen müssen. Ich werde Ihnen jedoch sagen, was App Engine kann und was nicht (oder nicht).

App Engine ist fantastisch gut skalierbar. Es ist in der Tat entworfen, um Web-Anwendungen in erster Linie auf lächerliche Längen zu skalieren , mit Benutzerfreundlichkeit und Anzahl der Funktionen als sekundäre Ziele.

Das soll nicht heißen, dass App Engine keine Funktionen hat oder nicht einfach zu bedienen ist, nur wenn die Wahl zwischen dem Hinzufügen einer Funktion und dem Bleiben einer Skalierbarkeit besteht, wählt das App Engine-Team die Skalierbarkeit.

App Engine verfügt beispielsweise nicht über einige Funktionen einer relationalen Datenbank, da diese Funktionen nicht auf die Größe einer App skaliert werden können, die von App Engine unterstützt wird. App Engine unterstützt keine Anfragen, die länger als 30 Sekunden dauern, da App Engine nur für die Bereitstellung einer Webanwendung konzipiert ist und keine lang laufenden Anfragen verarbeitet.

Wenn App Engine etwas nicht unterstützt, liegt das nicht daran, dass es unmöglich ist - nichts ist unmöglich - sondern weil es die Skalierbarkeit von App Engine beeinträchtigt.

Es gibt Problemumgehungen, die implementiert werden können (und wurden), um dies zu umgehen, insbesondere mit Dingen wie Aufgabenwarteschlange , und App Engine erhält ständig neue Funktionen und neue Frameworks.

App Engine für Unternehmen fügt SLAs und unterschiedliche Preise hinzu, ist ansonsten aber im Wesentlichen dieselbe App Engine.

p>     
Jason Hall 01.08.2010 23:22
quelle