
Ich habe ein Testkonto bei Google App Engine eingerichtet. Ich habe eine einfache Java-Anwendung (im Wesentlichen ein Rest-Endpunkt) und eine MySQL-Datenbank.
Keines von beiden wird überhaupt verwendet, wenn ich dort keine Anfragen stelle (z. B. keine Hintergrundprozesse). Und die Anfragen und Daten sind minimal, nur ein paar Tabellen und Zeilen. Die Anwendung wird die meiste Zeit überhaupt nicht verwendet.
Daher habe ich mich gefragt, warum beispielsweise die MySQL-Konsole konstant etwa 2 Anfragen/Sekunde anzeigt (im Google-Dashboard und in der MySQL-Konsole, wenn Sie der Anfrage vom Befehl „Status“ aus folgen).
Um es noch einmal zusammenzufassen: Ich habe eine Anwendung, die nicht verwendet wird, und eine MySQL-Datenbank. Die Rechnung für einen Monat sieht folgendermaßen aus:
DB Standard Intel N1 1 VCPU läuft in EUROPEWEST3 (mit 30 % Aktionsrabatt): 672 Stunden – 44,08 EUR
Storage PD SSD für DB in Frankfurt: 10 Gibibyte Monate – 1,65 Euro
Wie kann ich herausfinden, was diese Ressourcen verbraucht? MySQL scheint hier der Übeltäter zu sein. 10 GB Datennutzung für MySQL (das vielleicht 1000 echte Abfragen für Zeilen mit vielleicht 100 Zeichen Daten erhalten hat).
Edit: Mir fällt jetzt auf, dass es sich bei den Stunden und Gb-Monaten eigentlich um den Zeitraum handelt und nicht um die „Nutzung“ (auch wenn auf der Rechnung „Nutzung“ steht).
Die Frage ist also vielleicht, ob Google wirklich so teuer ist? 50 Euro/Monat für eine Datenbank.
Antwort1
Bei Google Cloud SQL zahlen Sie für die Rechenzeit der Instanz, den Instanzspeicher und die Speicher-Snapshots. Ich habe eine DB Standard N1 1, die 50 USD pro Monat Rechenzeit plus etwa 10 USD Speicher kostet. Ich habe auch eine DB Standard N1 2, die genau das Doppelte pro Monat kostet.
Ihr Speicherplatz entspricht der Festplattengröße, mindestens 10 GB SSD. Sie zahlen für diese 10 GB, unabhängig davon, wie viel Sie davon verwenden.
Zum Vergleich: Diese Kosten sind nahezu identisch mit den Kosten, die Sie für den verwalteten RDS-Dienst auf AWS zahlen würden.
Während einer Testphase würde ich die Verwendung eines db-g1 oder db-f1 in Erwägung ziehen und diese nur dann aktualisieren, wenn Ihre Statistiken zeigen, dass dies erforderlich ist.