HTML-Server mit WINS



  • Könntest Du mir noch Tipps zurzüglich der Performance geben?
    Welche Modifikationen können die Leistung einsckränken, welche augmentieren?

    Es ist übrigens sehr, sehr nett von Dir, dass Du Dich so umfangreich
    mit den Problemen eines Neulings wie mir beschäftigst!

    Blueice 😉 😃



  • ich würd mal vorschlagen das wir uns erst mal kümmern das dein Server ordentlich läuft und danach können wir uns den Optimierungen Zuwenden obwohl man sagen muss das es aus sicht dieser kleinen Server nichts so weltbewegendes zu optimieren gibt.

    könntest aber mal schreiben wie weit de bist und wie dir die realisierung so vorschwebt?



  • Nun,
    Das WINS-Gerüst ist schon mal fertig!
    Auch die Prinzipien sind mir klar.
    Als Nächstes werden halt die Get, Recv... - Anfragen,
    wie sie in der RFC behandelt werden, drangenommen!

    Ich bin optimistisch.

    Blueice, 😃



  • ich glaube Blueice will nur labern. 😃



  • ??????



  • muell schrieb:

    ich glaube Blueice will nur labern. 😃

    Warum sollte ich nur labern wollen?
    Mal ehrlich, Mühe habe ich mir schon gemacht.
    Es ist nicht so einfach, in C++ zu schreiben!
    Besonders dann, wenn man noch nicht so gut darin ist.
    Ich möchte ja auch alles vornherein absprechen und sicher gehen,
    dass ich meinen Entwurf nicht gleich wieder verwerfen muss!

    Ich will keinen volllabern, wenn ich hier unerwünscht oder überflüssig
    bin, sagt es mir bitte. Es liegt außer meiner Natur Menschen weiter
    zu belasten



  • was mich eher interessiert ist wie du es realisiert hast in bezug auf sockets und Threats gemacht ? so mal ne kurze beschreibung des internen aufbaus soweit du halt schon bist

    ich hab bei mir z.b. folgenden aufbau

    3Threats

    den accept, den helper und den client threat

    der accept threat behandelt nur anfragen auf port 80 wird dort nen client gefunden erzeugt er für jeden clienten einen client threat und startet notfalls den helper falls dieser nicht schon läuft

    der helper threat überwacht die client threats wenn diese eben nach einer gewissen zeit nicht antworten werden sie beendet.und übernimmt auch nach eenden der threats ein paar aufräum arbeiten.

    die client threats bearbeiten eben die client anfragen wie dateisenden usw.



  • Das ist ein typisches Anfängerdesign...
    Da Funktioniert, wenn Du nur ein paar Clients hast. Sobald aber mehrere Clients sich verbinden wird entweder die Response-Time miserabel (weil das OS mehrere hunderte Threads schedulen muss) bzw. es geht übe haupt nicht, da Du in einem Prozess gar nicht so viele Threads anlegen kannst.
    Das Konzept ist also nach oben überhaupt nicht Skalierbar.

    Arbeite Dich mal in Thread-Pools ein bzw. lese mal Doku zu Bekannten Web-Servern...



  • Hi Jochen.
    Sry, dass ich dich so anschreibe - aber ich hab nirgendwo ne Mail-Addy von dir gefunden.
    Kannst du dir mal bitte ein Problem anschauen, da ich deinen Antworten hier nach, dir schon n bisschen Knowhow zuschreib und bei mir echt n Brett vorm Kopf is.
    --> http://www.c-plusplus.net/forum/viewtopic-var-t-is-130726.html

    Thx



  • Und jetzt?
    Was nun?
    Ihr habt mich jetzt verwirrt.
    Sollte kein OOB-Konzept angebracht werden?
    Klassen (Client)

    😮 😮 😮 😮 😮
    😕 😕 😕 😕 😕



  • na erklär doch mal was du bis jetzt hast.

    Sollte kein OOB-Konzept angebracht werden?
    Klassen (Client)

    und das erklär mal bitte genauer



  • Objektorientierte Brogrammierung 😃
    Sorry - tippfehler meinerseits: OOP

    Jeder Client wird ein Objekt und über die Konstruktoren/Destruktoren verwaltet.



  • Was für ein bescheuerter Thread...



  • meinung schrieb:

    Was für ein bescheuerter Thread...

    Was soll dass denn schon wieder? 👎
    Meinst Du, Du stoesst auf Akzeptanz, wenn Du staendig in diesen Thread reinspammst
    und DEINE Meinung ausgibst?
    Und wenn Du unbedingt weitermachst, WARUM sagst Du uns einfach nicht WIESO Du dass
    die ganze Zeit betreibst.
    Es soll ja Menschen geben, die sich mit solchen Hobbies die Zeit vertreiben...
    .

    .
    Den Nickname gibt es nicht nur um ihn zu verstecken!
    BENUTZE ihn! ⚠



  • ich möchte nochmal auf dem Post von Jochen Kalmbach bezüglich Threat-Pools zurückkommen

    Ich glaub zwar nicht das es beim Webserver das problem geben dürfte weil es reicht ja wenn er mit 50-130 gleichzeitigen Anfragen klar kommt. aber dennoch wäre es ja nicht verkehrt diesen "fehler" zu beseitigen wenns halbwegs leict zu bewerkstelligen ist.

    Mein Problem dabei ist nun aber das ich nichts zu diesem Thema finde zwar hab ich den ein oder anderen sourcecode mal dazu gesehen aber irgendwie erkennt man da erstens überhaupt keinen Vorteil noch werde ich darraus Schlau was daran besser ist.

    mal abgesehen von der Tatsache das bei diesen Systemen immer ein paar Threats schon vorgehalten werden was Antwortzeit auf einem request verkürzen würde





  • du kannst nach IOCP suchen.





  • Ich beschäftige mich grad mit dem Beispiel was von Jochen Kalmbach genannt wurde
    http://www.codeproject.com/internet/IOCP_Server_client.asp

    ich wollte jetzt einfach mal das Beispiel abändern sodas er wenigsten mal ganz einfach ne html anfrage beantworten kann.
    Ich würde nämlich gern die Klasse bei mir verwenden und da ich bei meinen Serven dann 2 Klassen komplett ersetzen muss wollt ich das in diesem Beispiel einfach mal so ausprobieren. Um zu sehen was ich bei mir abändern muss und wie ich es bei mir am besten einbaue und vorallem was ich aus der Klasse weglassen kann da ich es nicht brauche.

    aber irgendwie find ich da nicht so richtig durch. sitze da schon Stunden hinter aber irgendwie weiss ich net so richtig wie ich das am besten abändern soll. daher mal die frage ob jemand sich zufällig von euch mal mit dem bespiel auseinandergesetzt hat und mir tips geben könnte wäre ich dankbar.

    Es muss nicht die "Komplett-Lösung" sein auch ein paar kleine Stichpunkte würden mir schon weiterhelfen.

    wenn ihr noch ein paar infos benötigt dann fragt ruhig.

    Danke schonmal im Voraus

    EDIT: sicherheitshalber es geht um den Server(da das Beispiel ja Server und Client enthält)

    ach und unter VC6 und 2003 gibt es beim Kompilieren fehlermeldungen dort in den betreffenden zeilen (int) und (unsigned int) auskommentiern und schon läufts


Anmelden zum Antworten