Websites in C++



  • Der Seite sieht man das nicht an - wie auch ...

    Das CGI erzeugt immer HTML/CSS-Output und schickt den ab. In C ein CGI-Programm
    zuschreiben ist einfach. Es ist nicht so ein hilfloses Gestoppel wie zB PHP.
    Lies Dich mal ein. Im Apache gibst Du *.exe frei (unter Windows), dann noch
    definieren, daß CGI dafür freigegeben ist.

    Dann kannst Du das schon aufrufen.

    zB http://domain.tld/test.exe

    test.c:

    #include ...
    
      main() {
        printf( "\n\n<html><head></head><body><p>Hallo schnöder Weltuntergang</p></body></html>");
        return 0;
      }
    

    Die CGI-Variablen übergibt der Apache im Environment.



  • Ich weiß das dies so geht, ich wollte aber mal
    sehen ob auch schon komplexeres wie Foren programmiert wurden.
    Am meiten würde mich ein C/C++ Blog-System interessieren.
    Gibt es soetwas schon?

    0x0ERROR



  • Ja.

    Zwar ein Forum, aber ein Archivsystem mit mehreren TB an Daten. Erheblich
    schneller wie ein Oracle-Cluster :xmas1:


  • Mod

    Scheppertreiber schrieb:

    Es ist nicht so ein hilfloses Gestoppel wie zB PHP.

    Webseiten in PHP zu Entwickeln ist Aufgrund des deutlich besseren Ecosystems aber viel besser als in C++ 😉

    Was die Performance angeht: Hier hinkt idR die Datenbank hinten nach. Die Ausfuehrungszeit einer normalen Seite wie zB bei Twitter die Feed Anzeige ist trivial. Das Problem ist, die Daten zu bekommen - das ist der Tricky Part.



  • 630 GB Daten, erster Treffer nach 10 msec ...

    SQLite packt das nicht mehr mit einer db und > 100 Mio Records. Mit PHP stehe
    ich auf Kriegsfuß, nicht mein Ding. Ich mache eigentlich mittlerweile alles in
    C (früher auch asm, dBase, Pascal etc.).

    Für die Projektfreaks gibt es für CGI fertige Libs in C, ist aber auch schnell
    selbst geschrieben.



  • Gibt es aber irgendwo ein fertiges System zum Download?
    So wie Wordpress in PHP.

    0x0ERROR



  • 0x0ERROR schrieb:

    Gibt es aber irgendwo ein fertiges System zum Download?
    So wie Wordpress in PHP.

    0x0ERROR

    Du solltest C können und verstehen wie die CGI-Schnittstelle funktioniert.
    Der Rest ist relativ einfach.



  • GGf Interessant nicht als CGI: https://github.com/d5/node.native



  • Schau Dir mal Tntnet an. Damit kannst Du C++-Code in html einfügen, ähnlich, wie man es von PHP oder JSP kennt.



  • tntnet schrieb:

    Schau Dir mal Tntnet an. Damit kannst Du C++-Code in html einfügen, ähnlich, wie man es von PHP oder JSP kennt.

    So ähnlich mache ich das auch. Entweder die eigene db oder SQLite mit
    eingeklemmt. Allerdings erzeuge ich das HTML direkt im Programm. Teilweise
    (für Listen etc) auch mit Templates. Eine Mischung vermeide ich.



  • Facebook basiert auf C, wurde aber in PHP geschrieben. Übersetzt via
    https://github.com/facebook/hiphop-php

    Laut einigen Aussagen werden die übersetzten Programme aber relativ riesig und erfüllen eigentlich nur noch ihren Zweck - fernab jeglicher "Schönheit" oder intelligentem Design.



  • Scheppertreiber schrieb:

    tntnet schrieb:

    Schau Dir mal Tntnet an. Damit kannst Du C++-Code in html einfügen, ähnlich, wie man es von PHP oder JSP kennt.

    So ähnlich mache ich das auch. Entweder die eigene db oder SQLite mit
    eingeklemmt. Allerdings erzeuge ich das HTML direkt im Programm. Teilweise
    (für Listen etc) auch mit Templates. Eine Mischung vermeide ich.

    Und was ist daran ähnlich? Tntnet hat eine Template-Sprache. Du machst das ähnlich, aber keine Templates. Also machst Du es doch genau gar nicht ähnlich 😕 ?



  • tntnet_ schrieb:

    Scheppertreiber schrieb:

    tntnet schrieb:

    Schau Dir mal Tntnet an. Damit kannst Du C++-Code in html einfügen, ähnlich, wie man es von PHP oder JSP kennt.

    So ähnlich mache ich das auch. Entweder die eigene db oder SQLite mit
    eingeklemmt. Allerdings erzeuge ich das HTML direkt im Programm. Teilweise
    (für Listen etc) auch mit Templates. Eine Mischung vermeide ich.

    Und was ist daran ähnlich? Tntnet hat eine Template-Sprache. Du machst das ähnlich, aber keine Templates. Also machst Du es doch genau gar nicht ähnlich 😕 ?

    😉

    Ähnlich: kein PHP 😃 😃 😃


  • Mod

    Scheppertreiber schrieb:

    tntnet schrieb:

    Schau Dir mal Tntnet an. Damit kannst Du C++-Code in html einfügen, ähnlich, wie man es von PHP oder JSP kennt.

    So ähnlich mache ich das auch. Entweder die eigene db oder SQLite mit
    eingeklemmt. Allerdings erzeuge ich das HTML direkt im Programm. Teilweise
    (für Listen etc) auch mit Templates. Eine Mischung vermeide ich.

    Warum SQLite?

    Und HTML Code immer nur per Templates generieren. NIE NIE NIE anders machen.

    Im Web ist das Teil dass die Performance bringen muss die Datenspeicherung - also die Datenbank, Memcache, etc. das verwendet wird um die Daten die man anzeigen will zu speichern und zu verknüpfen.

    Die reine Ausführzeit des restlichen Codes ist irrelevant kurz.



  • Warum SQLite?

    Ist praktisch. mySQL werde ich mir und den Admins nicht antun.

    Und HTML Code immer nur per Templates generieren. NIE NIE NIE anders machen.

    Da stimme ich nicht zu.

    Wenn Fossilien wie der IE6 mal verschwunden sind mag sein sinnvoll sein.
    zB eine scrollbare table mit Spaltenköpfen die stehenbleiben. Eine Template
    wird da schnell recht unübersichtlich.

    Templates haben weiter den Nachteil, daß mir die Herren Admins darin herumbasteln ...


  • Mod

    Scheppertreiber schrieb:

    Warum SQLite?

    Ist praktisch. mySQL werde ich mir und den Admins nicht antun.

    Wozu dann C++?

    Und HTML Code immer nur per Templates generieren. NIE NIE NIE anders machen.

    Da stimme ich nicht zu.

    Wenn Fossilien wie der IE6 mal verschwunden sind mag sein sinnvoll sein.
    zB eine scrollbare table mit Spaltenköpfen die stehenbleiben. Eine Template
    wird da schnell recht unübersichtlich.

    Templates haben weiter den Nachteil, daß mir die Herren Admins darin herumbasteln ...

    Du argumentierst also, dass MVC wegen dem IE6 schlecht ist?



  • Was hat das mit MVC zu tun ?

    Es sind rein praktische Gründe. Das System ist seit 10 Jahren online und
    läuft sehr gut. Ohne Not baue ich das nicht komplett um.

    Für kleinere Datenmengen ist SQLite wirklich praktisch. Es kommmt halt ab ca
    3 Mio Records so langsam ins schwitzen.

    Wir haben in der Firma ca 30 Server laufen. Kannst Du Dir den administrativen
    Aufwand mit zB mySQL vorstellen ? Die erschlagen mich ...


  • Mod

    Scheppertreiber schrieb:

    Was hat das mit MVC zu tun ?

    Templates sind die View aus dem MVC.

    Es sind rein praktische Gründe. Das System ist seit 10 Jahren online und
    läuft sehr gut. Ohne Not baue ich das nicht komplett um.

    Legacy ist ein guter Grund warum Strukturen schlecht sind, keine frage.
    Aber dann bitte hier nicht promoten als gute Lösung 😉

    Wir haben in der Firma ca 30 Server laufen. Kannst Du Dir den administrativen
    Aufwand mit zB mySQL vorstellen ? Die erschlagen mich ...

    Es ist eine Performance Frage. Ich finde es einfach witzig den ganzen Aufwand von C++ in Kauf zunehmen, wenn man dann die Datenbank mit Handbremse fährt.

    Da ist ein Python/PHP/Ruby/etc. Script soviel weniger Wartungsaufwand und vermutlich sogar ein Eck schneller...

    Aber klar, aus Legacy Gründen gibt es viele komishce Konstellationen die man wenn man es sauber machen würde, so nie hätte.



  • Ich finde es einfach witzig den ganzen Aufwand von C++ in Kauf zunehmen, wenn man dann die Datenbank mit Handbremse fährt.

    10 ms bei 100 Mio Records ist 'ne Handbremse ???


  • Mod

    Scheppertreiber schrieb:

    Ich finde es einfach witzig den ganzen Aufwand von C++ in Kauf zunehmen, wenn man dann die Datenbank mit Handbremse fährt.

    10 ms bei 100 Mio Records ist 'ne Handbremse ???

    sqlite ist langsam.
    ist einfach so.

    es kann natürlich schnell genug sein, keine Frage.


Anmelden zum Antworten