the-FoX: Sockets

Hallo erstmal,

ich versuch mich grad an der Programmierung eines Servers. Wieviele Sockets darf ich gleichzeitig offen halten ?! Also ich möchte wenn möglich zu allen Clients eine Connection offen halten um ihnen Systemmeldungen zu schciken, wenn sie sich eingeloggt haben

  1. hallo
    Wir haben letztes jahr in der Schule ein Projekt gemacht, welches einen Server-Client Chat realisiert hat, wobei der Server unter RedHat Linx gelaufen ist. Bei diesem Projekt wurde auch für jeden User ein Socket geöffnet. Die anzahl der maximal möglichen sockets liegt glaube ich bei sizeof(int)-1 oder so...
    mfg
    Matthias Huttar

    1. hallo
      Wir haben letztes jahr in der Schule ein Projekt gemacht, welches einen Server-Client Chat realisiert hat, wobei der Server unter RedHat Linx gelaufen ist. Bei diesem Projekt wurde auch für jeden User ein Socket geöffnet. Die anzahl der maximal möglichen sockets liegt glaube ich bei sizeof(int)-1 oder so...
      mfg
      Matthias Huttar

      in welcher Sprache habt ihr den geschrieben ?! Könntest DU Ihn mir mal schicken ?!

  2. Hallo,

    ich versuch mich grad an der Programmierung eines Servers. Wieviele Sockets darf ich gleichzeitig offen halten ?! Also ich möchte wenn möglich zu allen Clients eine Connection offen halten um ihnen Systemmeldungen zu schciken, wenn sie sich eingeloggt haben

    Bei UNIX Domain Sockets oder INET Sockets sind Standard maximal 5 Sockets einzurichten. Wenn eine Verbindung ankommt, dann wird der aktuelle Sockethandle kopiert und die Kommunikation an ein Submodul weitergeleitet. Das heisst es sind maximal 5 gleichzeitige werbindungen möglich, die restlichen kann man entweder in eine Warteschalnge nehemn oder abweisen. Das kommt auf die Art und Weise der Serveranwendung an.

    Bis denn ... Starbuck

    1. Hallo,

      ich versuch mich grad an der Programmierung eines Servers. Wieviele Sockets darf ich gleichzeitig offen halten ?! Also ich möchte wenn möglich zu allen Clients eine Connection offen halten um ihnen Systemmeldungen zu schciken, wenn sie sich eingeloggt haben
      Bei UNIX Domain Sockets oder INET Sockets sind Standard maximal 5 Sockets einzurichten. Wenn eine Verbindung ankommt, dann wird der aktuelle Sockethandle kopiert und die Kommunikation an ein Submodul weitergeleitet. Das heisst es sind maximal 5 gleichzeitige werbindungen möglich, die restlichen kann man entweder in eine Warteschalnge nehemn oder abweisen. Das kommt auf die Art und Weise der Serveranwendung an.

      Bis denn ... Starbuck

      jau, danke =o) wenn dann wären die eh inner Warteschlange und werden dann alle reihum mit den messages bedient. also eine systemmeldung wird dann an alle clients geschickt... dazu wird einfach die liste der sockets abgearbeite..so hab ichs mir jedenfalls vorgestellt =o)

  3. moin,

    my $server_socket = new IO::Socket::INET (
        LocalPort => 13,
        Listen => $SOMAXCONN,
        Proto => 'tcp',
        Reuse => 1)|| die "$!\n";

    wobei Listen => 5 ist eigentlich der Standardwert. Versuchs mal mit o.g. $SOMAXCONN

    Rolf