c't 7/2023
S. 140
Wissen
Webservices mit C++
Bild: Michael Vogt

Sportlicher Dienstbote

Webservices in C++ programmieren mit Boost.Beast

Es müssen nicht immer fette Frameworks wie Django, Rails oder Spring Boot zum Entwickeln von Webdiensten sein. Wer Wert auf Geschwindigkeit legt, fährt mit C++ und einer effizienten Bibliothek anstelle von Python, Ruby oder Java womöglich besser. Eine Einführung in die Beast-Bibliothek von Boost.

Von Oliver Lau

Webservice-Frameworks wie Django, Rails oder Spring Boot sind so komplex, dass man sich leicht darin verirren kann. Außerdem verführen sie dazu, viele API-Funktionen zu einem monolithischen Block zusammenzufügen, der nur schwer zu warten ist. Deshalb sind Microservices eine gute Idee: Sie erledigen höchstens eine Handvoll Aufgaben. So entsteht leicht wartbarer Code, der unabhängig von anderen Services implementiert, gepflegt und in Betrieb genommen werden kann.

Wenn obendrein Performance wichtig ist, bietet sich eine systemnahe Sprache wie C++ an. Für die im Folgenden besprochene Implementierung eines rudimentären Micro-Webservices haben wir uns für die Bibliothek Beast aus dem plattformübergreifenden C++-Framework Boost entschieden. Sie ist „header-only“, besteht also nur aus Header-Dateien, was dem Compiler beim Optimieren hilft.

Alle heise-Magazine mit heise+ lesen

3,99 € / Woche

Ein Abo, alle Magazine: c't, iX, Mac & i, Make & c't Fotografie

  • Alle heise-Magazine im Browser und als PDF
  • Alle exklusiven heise+ Artikel frei zugänglich
  • heise online mit weniger Werbung lesen
  • Vorteilspreis für Magazin-Abonnenten
Jetzt unbegrenzt weiterlesen Vierwöchentliche Abrechnung.

Alle Ausgaben freischalten

2,95 € 0,25 € / Woche

Nach Testphase 2,95 € wtl.

  • Zugriff auf alle c't-Magazine
  • PDF-Ausgaben zum Herunterladen
  • Zugriff in der c't-App für unterwegs
Jetzt testen Nach Testphase jederzeit monatlich kündbar.

Ausgabe einmalig freischalten

5,90 € / Ausgabe

Diese Ausgabe lesen – ohne Abobindung

  • Sicher einkaufen im heise shop
  • Magazin direkt im Browser lesen
  • Dauerhaft als PDF behalten

Kommentare lesen (1 Beitrag)