Server-Push bei Chat
the-FoX
- cgi
0 Manuel Burghammer0 Thomas Hieck0 Danny
0 Marco
Hallo @lle Forum-User/-innen!
Ich überlege, einen Chat in perl zu schreiben, der permanent die aktuellen Daten an den Browser des Chatters schickt.
Dazu ist die Server-Push-Technologie ja bestens geeignet, auch wenn ich es irgendwie nicht ganz hinbekomme (vieleicht kann mir da auch nochmal jemand helfen?)
Was mich aber besonderrs interessieren würde ist die Prozessorlast, die die Chatter dann schaffen. Bei 20Usern gleichzeitig laufen doch auch 20 Skripte gleichzeitig oder ?
Ich will das eigendliche Chat-Skript so klein wie möglich halten (Nur Identifikation überprüfen, aus Datei auslesen ohne grosses Auswerten und Daten an Browser schicken)
CU Daniel / the-FoX
Hallo @lle Forum-User/-innen!
Ich überlege, einen Chat in perl zu schreiben, der permanent die aktuellen Daten an den Browser des Chatters schickt.
Dazu ist die Server-Push-Technologie ja bestens geeignet, auch wenn ich es irgendwie nicht ganz hinbekomme (vieleicht kann mir da auch nochmal jemand helfen?)#
ich mach im moment grad daselbe.....bzw. werds wohl lassen weil du damit die IE user ausgrenzt.....
Was mich aber besonderrs interessieren würde ist die Prozessorlast, die die Chatter dann schaffen. Bei 20Usern gleichzeitig laufen doch auch 20 Skripte gleichzeitig oder ?
Ich will das eigendliche Chat-Skript so klein wie möglich halten (Nur Identifikation überprüfen, aus Datei auslesen ohne grosses Auswerten und Daten an Browser schicken)
die prozessorlast ist tierisch.....bei 20 usern ist ein 400er in die knie gegangen.....kann aber sein das einfach das script noch zuviele bremsen eingebaut hatte....ich hab die 20 user ueber einen anderen rechner per script simuliert....
SoLong M.
Hallo @lle Forum-User/-innen!
Ich überlege, einen Chat in perl zu schreiben, der permanent die aktuellen Daten an den Browser des Chatters schickt.
Dazu ist die Server-Push-Technologie ja bestens geeignet, auch wenn ich es irgendwie nicht ganz hinbekomme (vieleicht kann mir da auch nochmal jemand helfen?)#ich mach im moment grad daselbe.....bzw. werds wohl lassen weil du damit die IE user ausgrenzt.....
Was mich aber besonderrs interessieren würde ist die Prozessorlast, die die Chatter dann schaffen. Bei 20Usern gleichzeitig laufen doch auch 20 Skripte gleichzeitig oder ?
Ich will das eigendliche Chat-Skript so klein wie möglich halten (Nur Identifikation überprüfen, aus Datei auslesen ohne grosses Auswerten und Daten an Browser schicken)die prozessorlast ist tierisch.....bei 20 usern ist ein 400er in die knie gegangen.....kann aber sein das einfach das script noch zuviele bremsen eingebaut hatte....ich hab die 20 user ueber einen anderen rechner per script simuliert....
SoLong M.
wieso IE-User ausgrenzen ? Es funktioniert auch mit Netscape !
Es gibt einen COntent-type der speziell für und von Netscape entwickelt wurde, aber es gibt auch einen, der für beide geht!
tagchen,
wieso IE-User ausgrenzen ? Es funktioniert auch mit Netscape !
Es gibt einen COntent-type der speziell für und von Netscape entwickelt wurde, aber es gibt auch einen, der für beide geht!
und welcher waere das ??..ich kenn nur den fuer netscape
SoLong M.
hi, endlich mal ein thema zu dem ich auch was sagen kann ;)
Ich überlege, einen Chat in perl zu schreiben, der permanent die aktuellen Daten an den Browser des Chatters schickt.
Dazu ist die Server-Push-Technologie ja bestens geeignet, auch wenn ich es irgendwie nicht ganz hinbekomme (vieleicht kann mir da auch nochmal jemand helfen?)#ich mach im moment grad daselbe.....bzw. werds wohl lassen weil du damit die IE user ausgrenzt.....
quatsch.
Was mich aber besonderrs interessieren würde ist die Prozessorlast, die die Chatter dann schaffen. Bei 20Usern gleichzeitig laufen doch auch 20 Skripte gleichzeitig oder ?
Ich will das eigendliche Chat-Skript so klein wie möglich halten (Nur Identifikation überprüfen, aus Datei auslesen ohne grosses Auswerten und Daten an Browser schicken)die prozessorlast ist tierisch.....bei 20 usern ist ein 400er in die knie gegangen.....kann aber sein das einfach das script noch zuviele bremsen eingebaut hatte....ich hab die 20 user ueber einen anderen rechner per script simuliert....
das kommt schon ein bisschen darauf an wie man das script programmiert...
wenn man ein miniscript hat (40 zeilen oder so) das nur alle 5 (extrem) sekunden mal schaut ob etwas neues da ist, sollte es sich in erträglichem rahmen halten.
wenn viele scripts laufen, ist das allerdings immer eine hohe belastung (auch wenn es dank mod_perl nicht ganz so schlimm ist) und ist auf virtuellen servern deswegen i.d.r. nicht erlaubt (wäre unfair, den anderen gegenüber).
danny
ich mach im moment grad daselbe.....bzw. werds wohl lassen weil du damit die IE user ausgrenzt.....
quatsch.
seit wann kann der IE serverpush ??....also ich habs noch nicht geschaft ihn dazu zu bringen......lass mich aber gern aufklaeren...~gg~
SoLong M.
Ich überlege, einen Chat in perl zu schreiben, der permanent die aktuellen Daten an den Browser des Chatters schickt.
Dazu ist die Server-Push-Technologie ja bestens geeignet, auch wenn ich es irgendwie nicht ganz hinbekomme (vieleicht kann mir da auch nochmal jemand helfen?)
Naja - das ist nicht schwer:
1. Script nicht beenden
2. Ausgabe-Puffer mit $ = 1; abschalten
Was mich aber besonderrs interessieren würde ist die Prozessorlast, die die Chatter dann schaffen. Bei 20Usern gleichzeitig laufen doch auch 20 Skripte gleichzeitig oder ?
Ich will das eigendliche Chat-Skript so klein wie möglich halten (Nur Identifikation überprüfen, aus Datei auslesen ohne grosses Auswerten und Daten an Browser schicken)
Tja, es werden nicht nur 20 Scripte gleichzeitig laufen - das waere bei kleinen Scripten
kein Problem - sondern 20 mal Perl-Interpreter mit ueber 2MB Speicher.
Perl ist also nicht unbedingt so geeignet dafuer.
Viele Gruesse,
Thomas Hieck
Ich überlege, einen Chat in perl zu schreiben, der permanent die aktuellen Daten an den Browser des Chatters schickt.
Dazu ist die Server-Push-Technologie ja bestens geeignet, auch wenn ich es irgendwie nicht ganz hinbekomme (vieleicht kann mir da auch nochmal jemand helfen?)Naja - das ist nicht schwer:
- Script nicht beenden
- Ausgabe-Puffer mit $ = 1; abschalten
das geht nur nicht bei jedem server. muss man halt schaun das man mindestens ein apache system erwischt ;)
Was mich aber besonderrs interessieren würde ist die Prozessorlast, die die Chatter dann schaffen. Bei 20Usern gleichzeitig laufen doch auch 20 Skripte gleichzeitig oder ?
Ich will das eigendliche Chat-Skript so klein wie möglich halten (Nur Identifikation überprüfen, aus Datei auslesen ohne grosses Auswerten und Daten an Browser schicken)Tja, es werden nicht nur 20 Scripte gleichzeitig laufen - das waere bei kleinen Scripten
kein Problem - sondern 20 mal Perl-Interpreter mit ueber 2MB Speicher.
Perl ist also nicht unbedingt so geeignet dafuer.
was dann? ich hab das ganze kompiliert und als c script laufen lassen...
die speicherbelegung war MINIMAL geringer, das bringts nicht.
sowas ist mit cgi wohl immer ziemlich rechenaufwendig, ich wüßte nicht wie man das machen sollte, ohne für jeden user einen neuen prozess starten zu müssen.. :-/
hi! werden die "großen chatsysteme" die man heute zutage für viel geld (10000 dm und höher) auch mit dieser server push technik gemacht?? und wo soll man solche skripte hosten?? da wird man doch bestimmt vom server geschmissen, bei soviel traffic/serverauslastung. dann brauch man ja schon nen eigenen server, odeR??
hi! werden die "großen chatsysteme" die man heute zutage für viel geld (10000 dm und höher) auch mit dieser server push technik gemacht?? und wo soll man solche skripte hosten?? da wird man doch bestimmt vom server geschmissen, bei soviel traffic/serverauslastung. dann brauch man ja schon nen eigenen server, odeR??
das würd mich auch mal brennend interessieren, wie die grossen Chatsysteme das machen. z.B. http://www.redseven.de oder http://www.kilahu.de
tagchen
das würd mich auch mal brennend interessieren, wie die grossen Chatsysteme das machen. z.B. http://www.redseven.de oder http://www.kilahu.de
die arbeiten mit streaming....das heisst die seite wird langsam vom server geliefert....das ganze ist ein java servlet und man braucht einen eigenen server dafuer weil dir kein hoster das script zulaesst ...~gg~
tagchen
das würd mich auch mal brennend interessieren, wie die grossen Chatsysteme das machen. z.B. http://www.redseven.de oder http://www.kilahu.de
die arbeiten mit streaming....das heisst die seite wird langsam vom server geliefert....das ganze ist ein java servlet und man braucht einen eigenen server dafuer weil dir kein hoster das script zulaesst ...~gg~
Und wenn ich das ganze in C/C++ schreibe ? ein Mini-CGI, dass sich nur um das Streaming kümmert ?
Und wenn ich das ganze in C/C++ schreibe ? ein Mini-CGI, dass sich nur um das Streaming kümmert ?
ändert leider nichts....
man kann es so machen, dass die belastung nicht sonderlich hoch fällt und wenn du dann immer nur so ein paar chatter online hast, wird dein provider wohl auch nichts sagen.
aber wenn du einen wirklich gut besuchten chat hast, mit so 100 usern gleichzeitig, dann wird er wohl darauf aufmerksam werden...
wenn auf dem server plötzlich dauerhaft 100 prozesse laufen, alle vom selben account ;)
aber auf der anderen seite, wenn man soviele besucher hat könnte man die kosten für einen "echten" server schon glatt wieder rauskriegen..
das ist immer so eine sache.. :)
wär' ja langweilig, wenns jeder packen würde ;)
Danny
tagchen
Und wenn ich das ganze in C/C++ schreibe ? ein Mini-CGI, dass sich nur um das Streaming kümmert ?
chat.de ist ein c++ proggi das eine HTML seite erzeugt.....ist aber komplett in c++ geschrieben und der server ist ein schrank mit 2 metern breite und 2,20 meter hoehe...~gg~
SoLong M.
hi! werden die "großen chatsysteme" die man heute zutage für viel geld (10000 dm und höher) auch mit dieser server push technik gemacht?? und wo soll man solche skripte hosten?? da wird man doch bestimmt vom server geschmissen, bei soviel traffic/serverauslastung. dann brauch man ja schon nen eigenen server, odeR??
soweit ich weiß besteht giga.de z.b. gleich aus einer ganzen server-armade powerd by t-online ;)
einen eigenen server brauchst du dafür mindestens.