Fallstudie: Remind
2015
Remind ist eine Web- und mobile Anwendung, mit der Lehrer via Textnachrichten mit ihren Schülern und deren Eltern in Kontakt bleiben können. Die Remind-Plattform wird von 25 Millionen Nutzern, davon 1,5 Millionen Lehrern genutzt, die monatlich über die Anwendung 150 Millionen Nachrichten austauschen.
Die Umstellung auf Amazon ECS hat unsere Serviceleistung deutlich verbessert. Wir haben die Servicereaktionszeiten im 99. Perzentil um 50 % reduziert."
Jason Fischl
VP of Engineering, Remind
Die Herausforderung
- Remind verwendete zur Ausführung seiner gesamten Anwendungsinfrastruktur als monolithische Anwendung – also für die Nachrichtenzustellungsengine, die Front-End-API, den Web-Client und das Chat-Back-End – die Cloud-Plattform eines Drittanbieters.
- Skalierungsprobleme veranlassten das Unternehmen zum Umstieg auf eine Microservices-basierte Architektur, jedoch erfüllte die eingeschränkte Transparenz von CPU-, Speicher- und Netzwerkleistung, die der PaaS-Anbieter bereitstellte, nicht die Erwartungen von Remind.
- So entschloss sich Remind für Docker auf Amazon Elastic Compute Cloud (Amazon EC2). Dies erschien dem Unternehmen die beste Lösung zur Erreichung einer optimalen Ressourcenauslastung und einer konsistenteren Umgebung. Zunächst dachte Remind dabei an eine interne PaaS-Lösung, von der sich das Unternehmen eine besondere Entwicklungseffizienz versprach.
- Remind begann also, seine eigene PaaS auf dem Linux-basierten CoreOS und seiner Serverflotte aufzubauen. Die Flotte und der etcd-Schlüsselwertspeicher waren jedoch instabil. Außerdem wollte das Team den zeitlichen Aufwand für den Betrieb seines eigenen Cluster-Managementsystems vermeiden.
Gründe für Amazon Web Services
- Um den Betrieb möglichst einfach zu halten, entschied sich Remind daher, AWS direkt zu verwenden. Es nutzte immerhin bereits Amazon Redshift, Amazon DynamoDB, Amazon Simple Storage Service (Amazon S3) und Amazon CloudFront.
- Da das Engineering-Team von Remind klein war und weder über die Zeit noch die Kenntnisse für den Betrieb und die Verwaltung von Clustern verfügte, entschloss sich das Unternehmen, seine PaaS auf Amazon EC2 Container Service (Amazon ECS) aufzusetzen.
- Remind gab seine PaaS-Lösung auf Amazon ECS als Open Source unter dem Namen „Empire“ frei.
- Amazon ECS stellt die Container-Planung und -Integration bereit, während Elastic Load Balancing (ELB) der Empire-Plattform die Verwendung von DNS für die Serviceerkennung ermöglicht.
- Empire verfügt über eine Heroku-kompatible API und CLI, über die Entwickler Anwendungen problemlos auf Amazon ECS bereitstellen können.
Die Vorteile
- Der Managed Service Amazon ECS bietet betriebliche Effizienz. Statt sich um den Betrieb und die Verwaltung von Clustern zu kümmern, können sich IT-Mitarbeiter daher ganz auf die Entwicklung und Bereitstellung von Anwendungen konzentrieren.
- Der Umstieg auf Amazon ECS brachte enorme Leistungsverbesserungen, u. a. mehr Stabilität und eine geringere Latenz.
- Die Reaktionszeiten haben sich im 99. Perzentil halbiert, wobei sich sowohl die Abweichungen als auch die Spitzen verringert haben.
- AWS stellt die erforderliche Sicherheitskontrolle wie auch Routing über VPCs bereit. Auch die Transparenz der Anwendungsleistung hat sich deutlich verbessert.
Über Remind
Remind ist eine Web- und mobile Anwendung, mit der Lehrer via Textnachrichten mit ihren Schülern und deren Eltern in Kontakt bleiben können.
Genutzte AWS-Services
Amazon EC2
Der Web-Service Amazon Elastic Compute Cloud (Amazon EC2) stellt sichere, skalierbare Rechenkapazitäten in der Cloud bereit. Der Service ist darauf ausgelegt, Web-Scale-Cloud-Computing für Entwickler zu erleichtern.
Amazon Redshift
Redshift unterstützt geschäftskritische, analytische Workloads für Fortune-500-Unternehmen, Startups und alle Unternehmen dazwischen.
Weitere Informationen »
Amazon DynamoDB
Amazon DynamoDB ist eine Schlüsselwert- und Dokumentendatenbank, die für beliebig große Datenmengen Antwortzeiten im einstelligen Millisekundenbereich bereitstellt.
Weitere Informationen »
Amazon S3
Amazon Simple Storage Service (Amazon S3) ist ein Objektspeicherservice, der branchenführende Skalierbarkeit, Datenverfügbarkeit, Sicherheit und Leistung bietet.
Weitere Informationen »
Amazon CloudFront
Amazon CloudFront ist ein schneller Content-Delivery-Service (CDN), der Daten, Videos, Anwendungen und APIs sicher, mit niedriger Latenz, hoher Übertragungsgeschwindigkeit und innerhalb einer entwicklerfreundlichen Umgebung an Kunden auf der ganzen Welt liefert.
Mehr erfahren »
Elastic Load Balancing
Elastic Load Balancing verteilt eingehenden Anwendungsdatenverkehr automatisch auf mehrere Ziele wie Amazon EC2-Instances, Container, IP-Adressen und Lambda-Funktionen.
Weitere Informationen »
Erste Schritte
Unternehmen jeder Größe und aus jeder Branche transformieren ihr Geschäft mit AWS. Kontaktieren Sie unsere Experten und beginnen Sie noch heute damit, AWS Cloud kennen zu lernen.