Backend mit AWS

In der modernen Softwareentwicklung sind skalierbare und effiziente Backend-Lösungen enorm wichtig. Amazon Web Services, kurz AWS, ist eine umfassende und weit verbreitete Cloud-Plattform, die eine Menge Infrastruktur- und Plattformdienste anbietet. Das Backend unserer Projekte arbeitet deshalb vollständig mit den beiden AWS-Diensten AWS Lambda und der No-SQL-Datenbank Dynamo DB.

Was ist AWS Lamda?

AWS Lambda ist ein Serverless-Computing-Dienst von Amazon Web Services (AWS), der es ermöglicht, Code auszuführen, ohne das man sich selbst um Server kümmern muss. Man kann Lambda-Funktionen erstellen und hochladen, die dann skalierbar und flexibel ausgeführt werden. Die Funktion kann verschiedene Aufgaben ausführen, wie in unserem Fall die Kommunikation zwischen Frontend und Backend.

Wie funktioniert AWS Lambda?

AWS Lambda führt deine Funktionen in isolierten Containern aus. Sobald du eine Funktion startest, stellt AWS automatisch die benötigte Rechenleistung (RAM und CPU) bereit und skaliert sie dynamisch. Du zahlst nur für die tatsächlich genutzte Rechenzeit und den Speicherverbrauch.

Die No-SQL Datenbank DynamoDB

Amazon DynamoDB ist eine vollständig gemanagte NoSQL-Datenbank mit hoher Skalierbarkeit und Geschwindigkeit. Sie eignet sich besonders für große Datenmengen und hohe Zugriffszahlen. Um diese Leistung optimal zu nutzen, ist eine durchdachte Datenmodellierung erforderlich.

Wie funktioniert DynamoDB

DynamoDB speichert Daten in Tabellen, wobei jedes Element (Item) aus Attributen besteht. Das wichtigste Attribut ist der Primärschlüssel, der entweder nur ein Partition Key oder eine Kombination aus Partition Key + Sort Key sein kann. Der Partition Key sorgt für eine gleichmäßige Verteilung der Daten und hat direkten Einfluss auf die Performance.

One-Table-Design in DynamoDB

Das One-Table-Design in DynamoDB ist wirklich eine geniale Idee: Alle verschiedenen Datentypen werden in einer einzigen Tabelle gespeichert, anstatt wie bisher separate Tabellen für verschiedene Entitäten zu haben. Und das Beste daran ist, dass es durch den cleveren Einsatz von Partition Key (PK) und Sort Key (SK) möglich ist, unterschiedliche Beziehungen und Zugriffsmuster besonders effizient abzubilden. Das Ergebnis: Man kann mit nur wenigen gezielten Abfragen komplexe Datenstrukturen abrufen und das ohne mehrere Tabellen verknüpfen zu müssen.

Ähnliche Beiträge

  • Client Credential Grant von OAuth

    Wer schon einmal eine Social Media App geöffnet hat, kennt unbewusst den Client Credential Grant. Man öffnet die App, wartet vielleicht ein paar Sekunden und schon sieht man die Neuigkeiten seiner Freunde oder personalisierte, vorgeschlagene Inhalte. Doch diese Daten stammen nicht von der App selbst. Im Hintergrund wurde die API des Social Media Servers angefragt,…

  • Password-Reset-Prozess

    Jeder hat schon mal sein Passwort vergessen. In solchen Fällen gibt es die Möglichkeit, ein neues Passwort zu setzen. Aber was passiert eigentlich, wenn du auf „Passwort zurücksetzen“ klickst? Hier erfährst du, wie der Prozess abläuft. Ablauf des Passwort-Reset-Prozesses Fazit Ein Passwort-Reset ist mehr als nur das Zurücksetzen eines Passworts. Durch Sicherheitsmaßnahmen wie Salts, Validierungen…

  • Registrierung

    Um ein neues Konto zu erstellen muss sich der Nutzer registrieren. Dafür müssen folgende Informationen angegeben werden: Beim Erstellen des Passworts erhält der Nutzer Hinweise, um die Sicherheit des Kontos zu gewährleisten. Alle Felder müssen vollständig ausgefüllt werden, da der Registrierungsbutton ansonsten deaktiviert bleibt und die Meldung „DATA INCOMPLETE“ anzeigt. Das Frontend überprüft die Eingaben…

  • Variantenmanagement

    Die meisten der von Elaspix betriebenen Produktkonfiguratoren speisen sich aus einer Variantenmanagement-Komponente, die an die Anforderungen unseres Kunden bzgl. Definition der Parameter und Ausprägungen, Anzahl der Baukomponenten, Kombinationsregeln etc. angepasst werden. Der Bedarf steigt bei unseren Kunden die Produktvisualisierung über ein Varianten­management-System abzurufen.

  • Sicherheitskomponenten im Login-System

    Richtlinien für Passwörter Ein sicheres Passwort zeichnet sich durch seine Länge und Komplexität aus. Für Online-Zugänge empfiehlt das Bundesamt für Sicherheit in der Informationstechnik (BSI) eine Mindestlänge von acht Zeichen, bestehend aus Groß- und Kleinbuchstaben, Zahlen und Sonderzeichen. Generell gilt: Je länger das Passwort, desto besser der Schutz vor unbefugtem Zugriff. Ein langes und weniger…