Webserver/Webdienst geschrieben in C++ unter Linux/Windows Server

Die Anforderung besteht darin, einen Linux/Windows Server-Computer ohne zusätzliche Installationen, auch bekannt als Java, Apache Tomcat/Jboss, zu haben, der in der Lage ist, als Webserver zu dienen und Webdienstanfragen zu akzeptieren (ich muss einen Webdienst in C++ schreiben, der das kann unter diesem Webserver bereitstellen).

Die Frage ist also, ob es eine C ++ - Bibliothek gibt, die eine solche Simulation eines Webservers bereitstellt, da sie sich von außen genauso verhalten sollte - um eine HTTP-Anfrage zu erhalten und auf den entsprechenden Webdienst umzuleiten.

In Bezug auf die Lizenz ist es vorzuziehen, eine kostenlose Lizenz für den kommerziellen Vertrieb zu haben, aber wirklich gute Optionen (die ihren Preis verdienen) werden ebenfalls in Betracht gezogen.

Willkommen bei den Softwareempfehlungen! Obwohl ich C++ nicht kenne, bin ich neugierig: Warum können Sie eine C-Bibliothek installieren, aber kein C-Programm (wie Apache)? Außerdem: Kennen Sie den Apache Webserver (nicht Tomcat)? httpd.apache.org
Hallo Angelo, C++ läuft bereits auf dieser Maschine. Voraussetzung ist, dass keine zusätzlichen Installationen vorhanden sind. Ich werde deinen Link prüfen. Danke.
Hallo Mawg, ich recherchiere gerade. Bisher suche ich nach LibMongoose Library (wurde in einem anderen Forum empfohlen), aber es ist nicht kostenlos für die kommerzielle Nutzung.

Antworten (2)

Es gibt viele in C++ geschriebene Frameworks, eines davon ist:

Cutelyst a C++11 built with Qt, mit einer der besten Positionen bei TechEmpower Benchmarks .

Obwohl Qt 5.6+ erforderlich ist, verwendet ein vollständiges CMS ( CMlyst ) etwa 6 MB RAM, während es etwa 3000 Anfragen pro Sekunde auf einem einzelnen Kern verarbeitet.

Die Lizenz ist LGPLv2.1+, was bedeutet, dass Sie sie für kommerzielle Projekte verwenden können.

Wenn Sie nach einer HTTP- (und HTTPS-) Serverbibliothek suchen, die von C oder C++ aus verwendet werden kann, sollten Sie libonion (LGPLv3-lizenziert), Wt (GPL-lizenziert oder eine kommerzielle Lizenz) oder libhttp (MIT-Lizenz) oder libmicrohttpd (LGPLv2.1) in Betracht ziehen lizenziert).

Mit diesen Bibliotheken können Sie ganz einfach einen Webserver aus Ihrer Anwendung machen.

Natürlich müssen Sie grundlegende Webtechnologien (HTML5, AJAX, CSS) verstehen. Diese Bibliotheken fügen Ihrem Code nur einige HTTP/HTTPS-Dienste hinzu.