Kosten Amazon Infrastruktur
Verfasst: Di 30. Jan 2018, 10:48
Hallo,
wenn man anfängt, ist ja alles kostenlos bei Amazon. Da macht es Spaß vieles zu nutzen.
Ich mache mir aber langsam Gedanken über die Kosten, die nach einem Jahr anfallen. Ich finde das sehr undurchsichtig, was da alles auf einen zukommt.
Ich habe bis jetzt vier Skills live - mein fünfter ist gerade in der Zertifizierung.
Drei davon nutzen DynamoDB, zwei S3 und der neueste nun auch noch ElasticBeanstalk (Tomcat mit Webapp).
Wie sieht das mit den Kosten aus, und wie kann ich die minimal halten?
DynamoDB
Ich habe ein Objekt, das eine Liste von Messwerten hält (Datum und Wert). Das persistiere ich direkt als Objekt - funktioniert prima. Allerdings muss ich bei Einlesen des Objekts auch immer alle Messwerte einlesen, obwohl ich - zumindest für den Skill - eigentlich nur die letzten 7 Messwert benötige. Die übrigen brauche ich nur für die unter Tomcat laufende Webanwendung.
Ich habe gesehen, dass die API sehr auf Reduzierung der Lese-Schreiblast ausgelegt ist (mit den ganzen Conditions, die gesetzt werden können).
Macht es aus kostengründen Sinn, das umzustrukturieren, so dass ich die Messwerte einzeln einlesen kann?
Ich glaube die 25 RW/Sek. gelten für den Account und nicht für einen einzelnen Skill. Wenn man mehrere Skills hat, kommt da schnell was zusammen. Der eben erwähnte Skill ist auf eine tägliche Nutzung ausgelegt. Bereits in der Testphase habe ich schon Warnungen bekommen, dass mein Limit in DynamoDB überschritten ist (durch die anderen Skills, sind es nur noch 5 RW/s). Daraufhin habe ich nochmal etwas Refactoring betrieben und die DB-Zugriffe bei einer Anwendung auf 3 reduziert (Lesen von zweit Objekten (aus zwei Tabellen) und einmal schreiben).
Allerdings werden sowohl die Sitzungen als auch die Datenmenge ja mit der Zeit zunehmen.
S3
Auch hier ist mir unklar, was da so auf mich zukommt. Ich habe da keine großen Dateien, aber viele PUT und GET Anforderungen.
Der letzte Skill erzeugt bei jedem Aufruf eine aktuelle Grafik von ca. 5k. Wenn ich mal von 2.000 Nutzern ausgehe, sind das bescheidene 10 MB. Aber 60.000 PUTs und zur Anzeige mind. genauso viele GETs.
Wenn ich nur das im Preiskalkulator eingebe, komme ich auf 0,31$ / Monat - verkraftbar.
Aber ich ich evtl. was vergessen?
Elastic Beanstalk
Keine Ahnung was das kostet - vielleicht muss ich mal irgendeine Amazon-Schulung dazu besuchen.
Ich habe folgende Konfiguration:
- Single Instance
- t1.micro Prozessor
und wie gesagt einen Tomcat mit einer kleinen Java-Webanwendung laufen.
Wenn ich das richtig verstehe, sind 750 Stunden / Monat kostenlos. Das wären 22,5 Minuten pro Nutzer - könnte passen. Da wird man vermutlich nicht jeden Tag draufschauen.
Aber was das kostet, wenn das erste Jahr rum ist, oder oben genannte Limits überschritten werden - keine Ahnung.
Kennt sich hier vielleicht jemand aus, und kann mir Hinweise oder Tipps geben?
--
Ciao Stephan...
wenn man anfängt, ist ja alles kostenlos bei Amazon. Da macht es Spaß vieles zu nutzen.
Ich mache mir aber langsam Gedanken über die Kosten, die nach einem Jahr anfallen. Ich finde das sehr undurchsichtig, was da alles auf einen zukommt.
Ich habe bis jetzt vier Skills live - mein fünfter ist gerade in der Zertifizierung.
Drei davon nutzen DynamoDB, zwei S3 und der neueste nun auch noch ElasticBeanstalk (Tomcat mit Webapp).
Wie sieht das mit den Kosten aus, und wie kann ich die minimal halten?
DynamoDB
Ich habe ein Objekt, das eine Liste von Messwerten hält (Datum und Wert). Das persistiere ich direkt als Objekt - funktioniert prima. Allerdings muss ich bei Einlesen des Objekts auch immer alle Messwerte einlesen, obwohl ich - zumindest für den Skill - eigentlich nur die letzten 7 Messwert benötige. Die übrigen brauche ich nur für die unter Tomcat laufende Webanwendung.
Ich habe gesehen, dass die API sehr auf Reduzierung der Lese-Schreiblast ausgelegt ist (mit den ganzen Conditions, die gesetzt werden können).
Macht es aus kostengründen Sinn, das umzustrukturieren, so dass ich die Messwerte einzeln einlesen kann?
Ich glaube die 25 RW/Sek. gelten für den Account und nicht für einen einzelnen Skill. Wenn man mehrere Skills hat, kommt da schnell was zusammen. Der eben erwähnte Skill ist auf eine tägliche Nutzung ausgelegt. Bereits in der Testphase habe ich schon Warnungen bekommen, dass mein Limit in DynamoDB überschritten ist (durch die anderen Skills, sind es nur noch 5 RW/s). Daraufhin habe ich nochmal etwas Refactoring betrieben und die DB-Zugriffe bei einer Anwendung auf 3 reduziert (Lesen von zweit Objekten (aus zwei Tabellen) und einmal schreiben).
Allerdings werden sowohl die Sitzungen als auch die Datenmenge ja mit der Zeit zunehmen.
S3
Auch hier ist mir unklar, was da so auf mich zukommt. Ich habe da keine großen Dateien, aber viele PUT und GET Anforderungen.
Der letzte Skill erzeugt bei jedem Aufruf eine aktuelle Grafik von ca. 5k. Wenn ich mal von 2.000 Nutzern ausgehe, sind das bescheidene 10 MB. Aber 60.000 PUTs und zur Anzeige mind. genauso viele GETs.
Wenn ich nur das im Preiskalkulator eingebe, komme ich auf 0,31$ / Monat - verkraftbar.
Aber ich ich evtl. was vergessen?
Elastic Beanstalk
Keine Ahnung was das kostet - vielleicht muss ich mal irgendeine Amazon-Schulung dazu besuchen.
Ich habe folgende Konfiguration:
- Single Instance
- t1.micro Prozessor
und wie gesagt einen Tomcat mit einer kleinen Java-Webanwendung laufen.
Wenn ich das richtig verstehe, sind 750 Stunden / Monat kostenlos. Das wären 22,5 Minuten pro Nutzer - könnte passen. Da wird man vermutlich nicht jeden Tag draufschauen.
Aber was das kostet, wenn das erste Jahr rum ist, oder oben genannte Limits überschritten werden - keine Ahnung.
Kennt sich hier vielleicht jemand aus, und kann mir Hinweise oder Tipps geben?
--
Ciao Stephan...