[Ajax] Cometd / node.js & socket.io und Co

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Tiffany Dicks, 28. November 2010 .

Schlagworte:
  1. 28. November 2010
    Cometd / node.js & socket.io und Co

    Hallo,

    wollte mal fragen ob sich jemand mit den genannten Techniken auskennt!

    Ich hab sowas in der Art vor wie bei facebook, sprich wenn jemand zum Beispiel ein Bild von mir kommentiert, erscheint ein Overlay in dem mir mitgeteilt wird das jemand mein Bild kommentiert hat!

    Hab mir schon ein paar Seiten angeschaut aber das Thema ist mir aktuell etwas strange!
     
  2. 4. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Sorry aber ich muss mal pushen. Kann doch nicht sein das davon keiner Ahnung hat! ;(

    Murdoc? Hacker5? Macht mich glücklich!!! Jeder andere User ist natürlich auch gefragt!
     
  3. 5. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    das ist ein wenig zu komplex um mal eben zu erklären wie das funktioniert ^^

    soweit ich das gesehen hab kannst du mit den sachen eine permanente verbindung zu deinem webserver aufbauen und dann messages die der server übermittelt abarbeiten.

    hast du schonmal was mit irc gemacht? damit bekommst du einiges an grundwissen mit, was dir später bei solchen sachen enorm hilft.

    vielleicht reicht dir ja schon der unterschied zwischen socket.io und ajax:

    ajax:
    mit ajax geht die anfrage "was gibts neues" immer vom client aus. d.h. du musst in einem intervall stänig beim server nachfragen. das bringt natürlich einiges an overhead, da jede neue anfrage individuell behandelt wird.

    socket.io:
    mit socket.io fällt diese anfrage weg, denn nun teilt der server dir mit wenn es was neues gibt.

    diese "technologie" kann man mit sog. "WebSockets" realisieren. d.h. eine permanente verbindung zum server, welcher dir immer, wenn es was neues gibt, daten ausspuckt mit denen du arbeiten kannst.

    im zend-framework findest du fertige klassen um so einen server zu programmieren. falls du dieses framework nicht verwendest tuts auch eine endlosschleife mit einer callback-funktion und nem sleep.

    PHP:
    while( true ) {
        
    prüfen_obs_was_neues_gibt ();
        
    flush ();  // wichtig, sonst kommt nix am client an
        
    sleep ( 1 );  // eine sek. warten
    }
    in der funktion "prüfen_obs_was_neues_gibt" checkst du dann deine db ob neue kommentare vorhanden sind und gibst die so formatiert aus, dass socket.io es versteht, verarbeitet und in nem event an deine funktionen übergibt. diesbezüglich bin ich leider auch nicht so bewandert, es sollte sich aber was in der doku finden lassen.

    meine persönliche meinung: sehr schön, aber noch in den kinderschuhen. ich würde das lieber selbst programmieren und auf fähige HTML5 browser beschränken, denn socket.io versucht alle möglichen technologien zu verwenden wie z.b. iframes, swf und noch einiges mehr -> was halt zur verfügung steht.

    mehr informationen zu WebSockets findest du hier: WebSockets in Firefox ✩
    Mozilla Hacks – the Web developer blog
     
  4. 5. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Das ist ja die Sache!

    Also was was ajax macht und was Cometd / node.js & socket.io und Co machen ist mir im Kern bewusst!

    Mein Problem ist halt das ich diverse "Beispiele" beliebäugelt habe die aus irgend einem Grund trotzdem alle paar Sekunden einen Request an den Server geschickt haben, das hat mich verwirrt da man das mit diesen Techniken ja eben verhindern möchte ...

    Soweit ich das mitbekommen habe ist ja in allen Browsern bis auf dem IE diese Long polling Geschichte möglich sprich 1 Request dahinter ein Skript in Endlosschleife und das wird von dem Javascript halt verarbeitet ...
    Beim IE soll es ja nur mit einem Workaround like Forever Iframe möglich sein ...

    Notfalls muss man es wirklich auf fähige Browser beschränken!
     
  5. 5. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Vielleicht hilft die ja das:
    gimite/web-socket-js · GitHub
    Oder
    Home | jWebSocket <-- sieht noch besser aus
    (beide in den Comments über Murdocs Link).

    Glaube da gibt es schon ganz coole Dinger. Musst nur mal durchtesten
     
  6. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Danke!

    Ich hab da noch zwei Probleme!

    1.) Ich habe grundsätzlich verstanden wie die Techniken arbeiten, mein Problem jetzt ist die Überlegung wie User nur die Meldungen zu sehen bekommen die für sie gedacht sind.
    Sprich, normal senden die "Socket Server" die Informationen ja an alle Clients ...
    Was ist aber wenn ich jetzt einem User zum Beispiel anzeigen möchte das eines seiner Bilder kommentiert wurde?
    Ich meine ich kann mir schon vorstellen wie man das macht, aber mein Hirn geht leider in den Leerlauf wenn Sachen etwas zu kompliziert sind! ^^

    2.) gimite/web-socket-js · GitHub hab ich mir mal besorgt und eine Test Umgebung aufgebaut ... Die Sache läuft im Chrome runder wie eine Eier Uhr ...
    Im Firefox läuft sie auch, nur leider macht da die Web Socket Policy von Flash Theater ...
    Die soll laut Readme hinter dem Port 8xx liegen im Firefox sagt er mir aber das er die hinter 8xx nicht findet ... (Sprich bis die Anwendung läuft dauert es ca. 1 Minute)

    Ich kann mir das nur so erklären das die System Flash Version nicht hinter 8xx schaut die von Chrome Flash Version dagegen schon ...

    Jemand eine Idee?

    LG
     
  7. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    das wäre fatal wenn das so wäre. du musst deinen server schon so programmieren, dass informationen nur an die user rausgehen die was damit zu tun haben. andernfalls könnte man im client dein script so weit modifizieren, dass man alle sachen einfach mitloggt die einem vielleicht garnichts angehen.

    der server sendet ja nicht nur,m sondern kann auch empfangen. am besten du baust so eine art "auth" ein um die benutzer zu identifizieren.

    ich kann dir auch sagen warum das ganze in chrome so gut läuft: in chrome gibt es bereits WebSockets in javascript (und damit ist das ganze ein kinderspiel), in firefox 3.6 nicht - erst ab firefox 4.

    ich würde dir raten, das ganze wirklich auf html5-fähige browser zu beschränken. im internet findet gerade ein großer wandel statt und du solltest lieber zu den neuen techniken wecheln anstatt zu versuchen diese sachen in alten browser zu imitieren.

    mit WebSockets hast du alles bei der hand was du brauchst, auch ohne socket.io und du kannst du komplett auf die programmierung konzentrieren anstatt auf workarounds.
     
  8. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Stimmt auch irgendwie!

    Wenn die User neue Features nutzen wollen müssen sie halt schauen das sie vom IE 6 wegkommen!

    Danke
     
  9. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    ich persönlich würde firefox 4 seit der ersten beta verwenden, aber leider stimmt bei mir das schriftbild überhaupt nicht - vorallem wenn ich die hardwarebeschleunigung abstelle erkenne ich fast nichts mehr - schade eigl. denn die neue ui und die ganzen funktionen sind eigl. sehr überzeugend.

    aber das ist ein anderes thema

    bis zum stabilen release von firefox musst du halt mit chrome arbeiten. der code sollte sich anschließen 1:1 für firefox4 übernehmen lassen.

    und da du eh nicht für den ie programmierst, kannst du ja mal die schönen sprachfeatures von ecma 3/4/5 nutzen, wie z.b. konstanten, labels, getter/setter, generator-pattern usw. ist sicher mal interessant für dich was so alles mögliche wäre wenn MS grad bei javascript nicht ihr eigenes ding drehen würden

    ps ab ie9 sollten diese sachen auch im ie funktionieren.
     
  10. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    IE wäre schon nicht schlecht, meinst du beim IE würde der Code irgendwann (eventuell auch mit ein kleinem bissel Hilfe) laufen?
     
  11. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    ein auf WebSockets basierende duplex verbindung inkl. server wär vielleicht was für das gemeinsame projekt, anstatt ein cms lieber was sinnvolles ^^
     
  12. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Affenpopo Server ...

    Was kann man überhaupt alles dahinter packen?

    Hab ja diesen Websocket Ruby Server gefunden ...

    Schlecht nur ich kann weder Ruby / Python noch sonst was! xD

    Gibt es für diese Spielerei keine einfache Lösung? Ich will doch einfach nur Usern sagen "Hey, der x der hat dein Bild x kommentiert"

    Kann doch nicht so schwer sein! :shock:

    Und wegen Auth, wenn es da eine reine PHP Lösung geben würde könnte man ja mit der Session arbeiten ...

    Und manche Implementierungen wie glaube socket.io arbeiten ja mit Handshakes, sowas müsste man dann nachbauen ...

    Wobei ich mich frage ...

    Naja an sich nur an die Meldungen des Users kommen wäre ja recht einfach ... Zum Beispiel über ...

    ws://127.0.0.1:8080/stream/{user_id oder user_key oder so}

    Aber wäre halt nicht sicher, sprich manipulierbar ...

    Was weiß ike, kann man einen auf Web Sockets basierende duplex Verbindung ink. Server essen? Weiß net was du damit meinst! ^^
     
  13. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    kannst auch mit php machen, die grundlagen siehst ja oben in der while(true) schleife von mir. ich weiß jetzt nicht genau wie das ganze von statten geht, aber vielleicht kannst du auch mit echten sockets arbeiten vernab von apache und co. das geht mit php nämlich auch ganz gut mit der socket-implementierung.

    also nen eigenen server programmieren und auf nen von dir bestimmten port horchen lassen. auch hier wären irc-kenntisse von vorteil, denn da bekommst du nämlich alles an wissen mit, was man so braucht für ne full-duplex kommunikation.

    und wie gesagt, im zend-framework findest du fertige klassen für ein solches vorhaben.

    kurz erklärt:
    dein script läuft in einer endlosschleife und horcht via socket an einem bestimmten port nach eingehenden verbindungen.
    da die schleife alles blockieren würde musst du nen daemon aus deinem script machen.
    -> *nix: pcntl_fork()
    -> win: dein script mit einem "&" am ende starten, dann läufts im hintergrund.

    wichtig dabei ist, dass du nicht den kompletten apachen in den hintergrund forkst, sondern nur den php-interpreter.

    du könntest aber auch den apachen zusätzlich an nem anderen port lauschen lassen, aber das macht weniger spaß und frisst mehr ressourcen ^^

    bei ruby und python hast halt den vorteil von threads. in php gibts sowas nicht auch nicht auf der cli, aber mit pcntl kannst wenigstens sowas ähnliches machen. denn damit dein eigener server reibunglos läuft brauchst du schon ein paar worker-daemons sonst wirds zu langsam.

    sowas alleine zu programmieren macht wenig bis garkeinen spaß und das debuggen is ne qual.
    vielleicht installierst einfach ruby oder python und probierst dein glück damit
     
  14. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Fände ich auf jeden Fall eine coole Sache. Gibt's bisser nichts wirklich innovatives (außerhalb des kommerziellen Bereichs).

    Pusher | HTML5 WebSocket Powered Realtime Messaging Service ist so ein kommerzielles Projekt, dass ziemlich gut aussieht.

    EDIT:
    Session in die Datenbank packen, dann ist es egal welche Sprache du für den Server benutzt, solange er auf dei DB zugreifen kann Schickst dann nur IP, Sessionkey an den Server und prüft mit DB
     
  15. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    ein einfacher sever (noch nich getestet, muss dazu php neu kompilieren ^^)

    so läuft!

    script starten und anschließend mit telnet mal verbinden
    Code:
    telnet localhost 9844
    und mal "hello" eingeben + enter

    PHP:
    <? php



    $pid  pcntl_fork ();
    if(
    $pid  0 )
        exit; 
    // brauchen wir nicht mehr
        
    if( $pid  0 )
        exit(
    'fehler: konnte script nicht klonen' );

    umask ( 0 ); 

    pcntl_signal ( SIGTERM 'handle_signal' );
    pcntl_signal ( SIGINT 'handle_signal' );
    #pcntl_signal(SIGCHLD, 'handle_signal'); 

    posix_setsid ();
    posix_setgid ( 65534 );
    posix_setuid ( 65534 );
        
    $socket  socket_create ( AF_INET SOCK_STREAM SOL_TCP );
    if(!
    $socket )
        exit(
    'fehler: socket_connect()' );
        
    if(!
    socket_bind ( $socket '127.0.0.1' 9844 ))
        exit(
    'fehler: socket_bind()' );
        
    if(!
    socket_listen ( $socket ))
        exit(
    'fehler: socket_listen()' );
        
    socket_set_nonblock ( $socket );

    $listen  true ;
       
    while(
    $listen  ===  true ) {
        
    handle_connections ( $socket );
        
    sleep ( 1 );
    }

    // --------------------------------------------

    function  shutdown ()
    {
        global 
    $socket ;
        
        
    socket_close ( $socket );
        exit;
    }

    function 
    handle_connections ( $socket )
    {
        
    $r  = array( $socket );
        
    $w  = array( $socket );
        
    $e  = array( $socket );
        
        if(@
    socket_select ( $r $w $e 60 ) !=  1 )
            return;
        
        
    $client  = @ socket_accept ( $socket );
        
        if(
    $client  ===  false )
            
    sleep ( 1 );
        elseif(
    $client  !==  null )
            
    handle_client ( $socket $client );
    }

    function 
    handle_client ( $socket $client )
    {
        
    $pid  pcntl_fork ();

        if(
    $pid  == - 1 )
            exit(
    'fehler: konnte script nicht klonen' );
        
        if(
    $pid  0 ) {
            
    socket_close ( $client ); 
            return;
        }
           
        global 
    $listen ;
        
    $listen  false ;
        
        
    socket_close ( $socket );
        
    handle_request ( $client );
        
    socket_close ( $client );
    }

    function 
    handle_request ( $client )
    {
        
    $request  rtrim ( socket_read ( $client 100000 PHP_NORMAL_READ ));
        
        if(
    $request  ==  'hello' )
            
    socket_write ( $client 'hello world!' );
        elseif(
    $request  ==  'exit' )
            return;
            
        
    sleep ( 1 );
        
    handle_request ( $client );
    }

    function 
    handle_signal ( $sig )
    {    
        switch(
    $sig ) {
            case 
    SIGTERM :
            case 
    SIGINT :
                
    shutdown ();
                
            case 
    SIGCHLD :
                
    $status  0 ;
                
    pcntl_waitpid (- 1 $status WNOHANG );
                
    shutdown ();
        }
    }  
    // seh grad das mein server lauter kleine zombies erzeugt - mal sehen wo der fehler is ^^ behoben
     
  16. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Cool, hier geht es ja ab!

    Naja, Ruby hab ich schon drauf samt web-socket-ruby, Den Ruby Websocket Server müsste man dann halt nur an seine eigenen Bedürfnisse anpassen ...

    Habe aber auch schon Python Websocket Server gefunden, für mich interessanter da ich Python sowieso lernen wollte!

    Aber damit es erstmal läuft werde ich es wohl mit PHP machen!

    Eventuell bekommen wir hier ja noch was zustande!
     
  17. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    der server von mir funktioniert im übrigen. kannst das ja mal selbst probieren wenn du ne linux-box zur hand hast.
     
  18. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Mal schauen muss mir erst eine virtuelle Umgebung einrichten!

    Bist ein Schatz! Fetter Schmatzer von mir! *kuschel*
     
  19. 6. Dezember 2010
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    AW: Cometd / node.js & socket.io und Co

    hier in php5.3 oop:
    No File | www.xup.in

    im ordner "windows" ist ne version die du unter windows testen kannst.
    die konsole blockiert dann aber, d.h. deine anfagen musst du in einer separaten konsole ausführen ^^

    zum modifizieren einfach die klasse lib/Client erweitern und bei Server::__construct() den namen deiner klasse übergeben

    starten musst du den server über die main.php
    PHP:
    php  - f main . php
    beispiel für ne klasse die dem client alle 60sek mitteilt obs neue kommentare gibt:
    PHP:
    <? php
    namespace  webs ;

    if(!
    class_exists ( '\webs\Base' ))
        require 
    'lib/Base.class.php' ;
        
    if(!
    class_exists ( '\webs\Client' ))
        require 
    'lib/Client.class.php' ;

    class 
    MyClient  extends  Client
    {
        protected 
    $isAuthed  false ;
        
        protected 
    $lastCheck  0 ;
        
        public function 
    dispatch ()
        {
            while(
    true ) {
                
    $input  $this -> readln ();
                if(!empty(
    $input )) {
                    
    $input  json_decode ( $input true );
                    
                    switch(
    $input [ 'command' ]) {
                        case 
    'auth' :
                            
    $this -> auth ( $input [ 'username' ],  $input [ 'token' ]);
                            break;
                        
                        case 
    'quit' :
                            return;
                            
                    }
                    
                    continue;
                }
                
                if(
    $this -> isAuthed )
                    
    $this -> update ();
                    
                
    sleep ( 1 );
            }
        }
        
        protected function 
    update ()
        {
            if(
    $this -> lastCheck  > ( $time  time ()) -  60 )
                return;
                
            
    $this -> lastCheck  $time ;
            
            
    // checken ob neue kommentare zu bildern vorhanden sind
            // ...
        
    }
        
        protected function 
    auth ( $user $token )
        {
            if(
    $user  ==  'hans'  &&  $token  ==  sha1 ( 'geheim' )) {
                
    $this -> isAuthed  true ;
                return;
            }
            
            
    $this -> writeln ( 'login incorrect' );
        }
    }
    die anfrage hab ich jetzt einfach mal mit json gemacht (kannst dir ja was anderes aussuchen)

    in der main.php dann einfach anpassen:
    PHP:
    $server  = new  webs :: Server ( '127.0.0.1' 9844 '\webs\MyClient' ); 
    // :: mit \ ersetzen
    einfach oder? ^^

    aja, den server solltest du hin und wieder mal neu starten, denn die zombie-kinder gehen nicht weg. die verbrauchen zwar keine resourcen mehr, aber müllen ps zu.

    wenn jemand weiß wie man die drecksteile entfernt bitte melden.
     
  20. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Also für solche Server Angelegenheiten ist doch Python die perfekte Sprache. Nichts gegen PHP (und man sieht, dass es dafür auch geeignet ist), aber mit Python hast du das sicher schneller (solange du es kannst) und besser umgesetzt.
    Aber das spielt keine Rolle.
    Das "Problem" ist also noch der Client, der die Anfrage sendet und Empfängt. Aber das scheint ja auch ein ganz anderes Problem zu sein.

    Der neue IE(9) soll übrigens ziemlich rocken. Hab ihn schon mal Probegefahren und hab erzählt bekommen, dass er so viel toller mit HTML5 umgehen soll als alle anderen wegen der DirectX integration. Und das soll sogar stimmen

    Meinst du eigentlich, dass der Aufwand verhältnismäßig ist (zur jetzigen Zeit) für so eine kleine Funktionsweise (neue Kommentare). Das ist erst sinnvoll, wenn die neuen Browser Standard sind. Meine Meinung.

    PS:
    Murdoc ich finde den Namen "Client" für die Server Klasse ziemlich verwirrend

    PPS:
    Das ist eine unglaublich geile Technik. Mein Hirn raucht nach Einsatzmöglichkeiten und neuen Projekten, die darauf basieren. Bei dir auch Murdoc?
     
  21. 6. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    ja "Worker" hätte besser gepasst, aber nunja in der klasse werden alle sachen abgerabeitet vom vom client kommen oder zum client wandern - von daher ^^

    bezüglich einsatzmöglichkeiten, ja da gibts es einige, aber im grunde konnte man sowas bisher auch mit ajax erledigen. mit dieser "technologie" geht halt einiges an overhead weg, weil der http-request wefällt.
     
  22. 7. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Richtig! Möglichkeiten sind viele da ...

    Ich hatte vor einigen Jahren mal an ein etwas interaktiveres Quiz Spiel gedacht, Problem war immer nur der Umgang mit Verbindungsbrüchen usw ...

    Bei diesem Quiz dachte ich an so Sachen wie "Der schwächste fliegt" oder sowas in der Art, meine Idee war x User in eine "Arena" zu schmeißen und die in einem Quiz gegeneinander antreten zu lassen ...

    Ich denke mit den Websockets lässt sich sowas ganz schön umsetzen!
     
  23. 7. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Moment einmal, mir fällt gerade ein das das alles irgendwie ziemlicher Schmarren ist! ;(

    Nehmen wir mal an ich arbeite mit einer normalen MySql Datenbank, nein Quark selbst wenn ich mit dem Filesystem arbeiten würde wäre es ...

    So, mein Ziel ist es dem User live über bestimmte Dinge zu informieren nicht alle x Sekunden, dann könnte ich es theoretisch ja auch per Ajax machen ...

    Mein Problem, im Endeffekt ist es doch Wurst ob ich unnötig Anfragen an den Server verbalere oder Datenbank Abfragen ...

    Theoretisch müsste ich ja in der Endlosschleife ständig in der Datenbank schauen (gehen wir mal von meinem Wunsch Feature aus) ob ein Bild kommentiert wurde oder nicht ...
    Das gäbe aber Massenhaft Abfragen ...

    Ich bin verwirrt, ich kann mir nicht vorstellen das facebook und Co das so machen ...

    Meine unausgereifte Idee wäre das irgendwie über die Session zu regeln, oder anders ...

    Hugo ist Freund von Bernd. Hugo kommentiert einen Upload (Bild) von Bernd.
    Das Skript informiert den Socket Server über diese Aktion und befiehlt diesem Bernd diese Information mitzuteilen ...

    Irgendwie so? :shock:

    Mein ich aber auch ...
     
  24. 7. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Ich beantworte rückwärts: ^^

    1. Facebook ist viel in C programmiert http://developers.facebook.com/blog/post/358

    2. Die Murdoc hat das Sleep(1) drin, weil sonst wirklich ständig das Script läuft. Das wäre ziemlicher Overload und Sekündliche Info reicht ja. Was du hier verwechselst sind die Requests. Du hast recht, dass der User mit "normalen" Ajax-Requests genauso informiert wird. Aber es ist eine Datenverbindung mehr
    So denkst du aktuell:
    Code:
    Kommentar erstellt Person A -> AJAX Request an Server -> Server speichert in DB
    Server informiert per Socket Person B ständig obs neues gibt und schaut in der DB -> sieht den Kommentar und informiert
    So sollte es aber sein:
    Code:
    Komment von Person A -> AJAX Req. an Server -> Server pusht an B UND Server speichert in DB -> Person B erhält Push per Websocket
    So hast du keine ständigen Datenbankabfragen in der Server-Schleife.

    3. Vergiss nicht, dass es keinen Sinn macht, wenn jeder Client seinen eigenen ServerDaemon hat. Vielleicht liegt da der Denkfehler?

    Male die Request auf ein Blatt Papier, vielleicht ist das ja dann deutlicher

    Ja gut, man kann jegliche Art von Chat umsetzen. Aber der unterschied zwischen und Programmierern und dem User ist, dass dem User unsere neue tolle Technik scheiß egal ist! Warum sollte er also vom Knuddels-Flash-Chat-Script zum neuen Ajax-Websocket-Script wechseln? Flash hat ja leider eh noch jeder drauf.
     
  25. 7. Dezember 2010
    AW: Cometd / node.js & socket.io und Co

    Keine Ahnung! Aber so darf man bei neuen Sachen nicht denken ...

    Aber noch nicht so lange! (Und im Endeffekt ist es glaube auch PHP Code)

    Edit sagt:

    How to kill a zombie process | php commit
    Zombie Process, any way to kill? [Archive] - The macosxhints Forums
     
  26. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.