Care.com verwandelt Monolithen in Microservices mit Splunk Observability

Care.com Care.com

Mit dem Ziel, Überwachungsund Telemetriedaten zu zentralisieren, benötigte Care.com eine Observability-Lösung, die granulare Transparenz bietet, um seine monolithische Architektur und disparaten Systeme in Microservices zu verwandeln.

Mit Splunk als einziger Plattform und Source-of-Truth für alle ObservabilityAnforderungen versteht Care.com seine gesamte Umgebung ganzheitlich, um Fehler schneller zu finden und zu beheben, die Anwendungsarchitektur zu verbessern und die Veröffentlichung von Funktionen zu beschleunigen.

Wie finden sich vertrauenswürdige Pflegekräfte und Menschen mit Betreuungsbedarf?

Die Antwort: Care.com, die weltweit führenden Plattform für die Suche und Koordination qualitativ hochwertiger Betreuungsanbieter für Familien. Nach dem Motto „Betreuung für deine Liebsten“ vermittelt diese Plattform Betreuungspersonal für Familien mit Bedarf an Kinder- und Seniorenbetreuung, Tiersitting und mehr. Care.com bietet sogar Unterstützung bei der Steuererklärung, sodass Kosten für Betreuungskräfte und Haushaltshilfen steuerlich angesetzt und legale Beschäftigungsverhältnisse geschaffen werden können.

Millionen von Familien und Pflegekräften in mehr als 20Ländern verlassen sich auf Care.com. Die Plattform muss also rund um die Uhr verfügbar, skalierbar und zuverlässig sein. Nach der Übernahme von Care.com durch IAC Anfang 2020 war die unmittelbare Priorität , den IT-Stack und die Infrastruktur von Care.com zu modernisieren und zu zentralisieren. Dazu mussten seit 13 Jahren bestehende monolithische System aufgebrochen und in agile Microservices umgewandelt werden.

Für den Erfolg benötigte Care.com eine leistungsstarke Observability-Lösung, die für Transparenz bei der Architektur sorgt, Probleme effizient aufzeigt und genügend Flexibilität zum Experimentieren bietet. Aus diesem Grund entschied sich das Team für die Splunk Observability Cloud.

Datengestützte Ergebnisse
  • Verkürzung der durchschnittlichen Zeit für die Untersuchung und Behebung von Vorfällen von einer Stunde oder mehr auf weniger als 10 Minuten
  • Bessere Einsicht in die komplexe containerisierte Infrastruktur und vereinfachtes Troubelshooting mit Full-Fidelity-Tracing und ohne Sampling
  • Entwickler können Features pünktlicher, häufiger und mit größerem Vertrauen veröffentlichen.
Splunk Observability Cloud demo
Laden Sie Splunk kostenlos herunter oder sehen Sie sich die Splunk Observability Cloud Demo an.

OpenTelemetry als Polarstern

Die Zentralisierung der Infrastruktur von Care.com bietet Vorteile in vielen Bereichen des Unternehmens: von verbesserter Skalierbarkeit und aufgelösten Silostrukturen bis hin zur Bereitstellung eines flexiblen, testgesteuerten Endbenutzererlebnisses.

Doch die Architektur des Unternehmens umfasste 13Jahre lang einen komplexen Flickenteppich aus unterschiedlichen Systemen, die bei zahlreichen Akquisitionen übernommen wurden. Um die Architektur erfolgreich zu durchblicken und in Microservices umzuwandeln, waren versierte Technologieexperten und erstklassige Tools erforderlich. „Die durch Splunk ermöglichte Observability war ausschlaggebend“, sagt Sean Schade, Principal Architect im Core Architecture-Team von Care.com. „Eine unserer ersten Maßnahmen bestand darin, Tracing und Telemetrie zu aktivieren, um zu verstehen, wie die Teile dieses riesigen Puzzles ineinandergreifen.“

Als „Early Adopter“ profitierte Care.com bei einem Projekt in dieser Größenordnung enorm von OpenTelemetry. „Wegen der Erkenntnisse, die es bereitstellt, ist OpenTelemetry einer der Leitsterne unserer Architektur“, sagt Schade. „Da Splunk der Hauptförderer von OpenTelemetry ist und damit einen Riesenvorsprung hat, konnten wir als Splunk-Kunde OpenTelemetry ab dem ersten Tag in unsere Architektur einbauen.“

Dank OpenTelemetry konnte Care.com auch gemeinsame Standards etablieren, um die Zusammenarbeit, Datendemokratisierung und Produktivität bei Ingenieuren und Entwicklern zu verbessern. Schade meint, “Wir haben jetzt ein Standardformat für Daten, das erleichtert Export- und Integrationsprozesse deutlich. Wir müssen uns nicht mehr mit fünf verschiedenen Anbietern und fünf verschiedenen Formaten befassen, um die Daten zu erfassen, sondern haben alles ganz zentral, an einem Ort.“

Eine zentrale Plattform für Full-Fidelity-Daten und schnellere Antworten

Zentralisierung ist für die Teams von Care.com von entscheidender Bedeutung. Und die Verwendung der Splunk Observability Cloud als zentrale Plattform für alle Observability-Anforderungen war der Schlüssel zum Erfolg.

„Wenn wir im Blindflug arbeiten, kann dies richtig teuer werden. Splunk macht mir die Arbeit als Systemarchitekt leichter, da ich Einblick in die Funktionsweise unseres Systems erhalte“, sagt Schade. „Eine Microservice-Architektur ist an sich schon schwierig, doch ohne APM oder Observability kann man sich richtig festfahren und ohne Ende Arbeitsstunden und Ressourcen verbraten. Mit Splunk Observability Cloud verfügen wir über die nötige Transparenz bei unseren Microservices. Es gibt uns eine zentrale Sicht auf sämtliche Abläufe und ermöglicht uns zu korrelieren – das ist von unschätzbarem Wert.“

„Wenn Systeme immer komplexer werden, fängt man an, Fragen zu stellen. Diese kann man aber nicht beantworten, weil man beispielsweise vergessen hat, eine Metrik zu erfassen. Genau hier setzt moderne Observability an“, erklärt Senior Director of Devops Engineering Matt Coddington, Leiter des DevOps-Teams bei Care.com. „Einer der wichtigsten Pluspunkte für mein Team ist, dass die Splunk-Plattform kurzlebige Infrastrukturen wirklich gut handelt – das macht es einfach, Metriken zu beobachten, wenn Container und Server hoch- oder heruntergefahren werden. Splunk Observability Cloud erfasst sämtliche Logs, Metriken und Traces auf eine Art und Weise, durch die wir jegliche Events innerhalb unserer gesamten Plattform verstehen und damit eine Antwort auf wirklich jede Frage erhalten.“

Care.com arbeitet schon seit einiger Zeit daran, all diese Daten zu erfassen – aber erst dank dem Full-Fidelity Tracing von Splunk war das auch möglich. „Man benötigt 100% seiner Daten, damit Observability wirklich effektiv ist“, meint Schade. „Ich habe keine Ahnung, wie hier irgendwer mit Splunk und seinem No Sampling-Ansatz mithalten soll. Das war nämlich das größte Problem bei allen APM-Produkten, mit denen ich in den letzten sieben oder acht Jahren gearbeitet habe.“

Splunk Observability Cloud erfasst sämtliche Logs, Metriken und Traces auf eine Art und Weise, durch die wir jegliche Events innerhalb unserer gesamten Plattform verstehen und damit eine Antwort auf wirklich jede Frage erhalten.
Matt Coddington
Senior Director of DevOps Engineering, Care.com

Schnelleres Troubleshooting und neue Features mit Splunk APM

Dank Splunk Observability Cloud konnte Care.com die durchschnittliche Dauer bis zur Identifizierung und Behebung eines Problems verkürzen. Dauerte das Troubleshooting vor Splunk noch eine Stunde oder länger, so findet und behebt das Team Probleme jetzt innerhalb von Minuten – durch einzigartige Splunk APM-Funktionen wie z. B. Tag Spotlight. „Tag Spotlight ist für das Troubleshooting enorm wichtig, da wir verschiedene Dimensionen in Echtzeit filtern können, um Fragen zu Fehlern und Latenzen zu beantworten“, sagt Coddington.

Eine solche Frage kam auf, als das Care.com-Team feststellte, dass die Antwortzeiten bei bestimmten Seiten der Website zu bestimmten Tageszeiten enorm anstiegen. Coddington und sein Team setzten ganz auf Splunk APM, um zu verstehen, welche Teile des Systems überlastet waren und welche Gemeinsamkeiten sie hatten. Nachdem festgestellt wurde, dass mobile Push-Benachrichtigungen im Hintergrund die Übeltäter waren, arbeitete das Team zusammen mit seinem Provider daran, die Durchsatzrate zu begrenzen und zum normalen Betrieb zurückzukehren.

Full-Fidelity-Daten erwiesen sich als besonders wertvoll als Care.com im Herbst während der Schulanfangsphase neue Funktionen veröffentlichen wollte. „Wir hatten eine harte Deadline, eine brandneue Architektur und jede Menge Premieren, wie etwa unsere allererste Veröffentlichung auf Kubernetes und die allererste Nutzung von GRPC-Services“, sagt Schade. „Ich glaube, ohne Splunk APM hätten wir es nicht geschafft, unsere Features zu veröffentlichen, weil es nicht möglich gewesen wäre, das reibungslose Funktionieren des Produkts zu prüfen und unvorhergesehene Probleme zu beheben.“

Von besseren User-Flows zu schnelleren Ladezeiten

Ganz gleich, ob es darum geht, eine Haushaltshilfe oder Kinderbetreuung zu finden oder Hilfestellung bei der Erstellung eines Haushaltsplans zu leisten – Care.com bemüht sich stets, eine außergewöhnliche User Experience zu bieten. Durch den Einsatz von Splunk Real User Monitoring (RUM) für die Registrierungsanwendung auf Care.com kann das Team die Performance beim Abschluss von Transaktionen messen, die von Webbrowsern im Front-End bis hin zu Service-Abhängigkeiten im Back-End reichen. Dies ermöglichte dem Team, schlechte Website-Performance zu identifizieren – verursacht durch Abhängigkeiten von Drittanbietern und deren geringe Geschwindigkeit – und die Seiten zu optimieren.

„Wir können nun Back-End-Traces von APM mit Front-End-Traces von RUM korrelieren. Das ist ein riesiger Vorteil, denn genau dieses Bindeglied hat uns bisher gefehlt“, sagt Schade. „Die Korrelationen sind sehr aufschlussreich und haben versteckte Ineffizienzen aufgedeckt, die wir jetzt angehen können.“

Als Nächstes plant das Team, Splunk RUM auf weitere Abläufe im Unternehmen anzuwenden, um sowohl Seitenladezeiten als auch das Nutzererlebnis weiter zu verbessern. „Wir bekommen viele Fragen aus dem Unternehmen, zum Beispiel woher die Benutzer kommen oder wie lange sie auf einer Seite oder bei einem Angebot bleiben“, erklärt Schade. „Wir freuen uns darauf, RUM zur Beantwortung dieser Fragen einzusetzen.“ Coddington betont erneut: „Splunk RUM ist das Produkt, das unsere ganze restliche Telemetrie einbindet, und das eröffnet völlig neue Möglichkeiten.“

Während der Corona-Pandemie verzeichnete Care.com eine deutliche höhere Nachfrage, und auch zukünftig rechnet die Plattform mit hohen Wachstums- und Nachfrageraten. Wenn das Thema Zentralisierung erfolgreich abgeschlossen ist, möchte Coddington als nächstes Ziel eine Verzehnfachung der Release-Frequenz erreichen. Dazu werden seine DevOps-Teams Splunk nutzen, um Probleme zu erkennen, sobald sie auftreten, automatische Warnmeldungen einzurichten und Release-Events im Zeitverlauf zu verfolgen. Beim eigentlichen Release-Vorgang werden die Teams dann die Live Tail-Funktion von Splunk Log Observer nutzen, um in Echtzeit zu sehen, ob ein Service richtig funktioniert.

Schade sagt: „Die Partnerschaft zwischen Splunk und Care.com ist wirklich gut. Splunk hat uns geholfen, viele Ziele im Zusammenhang mit unserer Architektur umzusetzen und zu beschleunigen, die wir sonst nie erreicht hätten – und wir freuen uns auf das, was noch kommt.“

Ich glaube, ohne Splunk APM hätten wir es nicht geschafft, unsere Features zu veröffentlichen, weil es nicht möglich gewesen wäre, das reibungslose Funktionieren des Produkts zu prüfen und unvorhergesehene Probleme zu beheben."
— Sean Schade, Principal Architect, Care.com
Branche: Online-Dienste
Erreichen Sie mehr – mit Splunk