HTML-Server mit WINS
-
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.htmlThx
-
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: OOPJeder 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
-
http://www.codeproject.com/threads/cpthreadpool001.asp
http://msdn.microsoft.com/library/en-us/vccore/html/vcconatlserverserverthreadpooldefined.asp
http://www.developers.net/node/view/153Mit .NET wäre das ganze viel einfacher, da es da schon alles fix-und-fertig gibt...
-
du kannst nach IOCP suchen.
-
So geht das auch...
http://www.codeproject.com/internet/IOCP_Server_client.asp
-
Ich beschäftige mich grad mit dem Beispiel was von Jochen Kalmbach genannt wurde
http://www.codeproject.com/internet/IOCP_Server_client.aspich 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