http://www.pronix.de -> Forum -> Linux-Unix Programmierung

Forum: Linux-Unix Programmierung

Moderatoren: juergen, Martin Conrad

Thema: Server, der mehrere Clients gleichzeitig bedient

  • (nur registrierte Mitglieder)
Hallo,
ich möchte eine Art IRC-Server schreiben, der in der Lage ist, die Anfragen sehr vieler Clients synchron zu bearbeiten. Die Funktion select() scheint mir dafür geeignet zu sein. Allerdings meine ich gelesen zu haben, dass die Anzahl an handels, die ich mit select() gleichzeitig verwalten kann, begrenzt ist. Ist das korrekt? Wie machen es richtige IRC-Server, viele wurden doch vor der Zeit von Threads geschrieben.

Danke an alle, die mir weiterhelfen oder es versuchen ;).
 
Hallo,

mir schwebt libevent durch den Kopf.
Ich selber verwende unter Linux nun epoll für solche Aufgaben.

http://en.wikipedia.org/wiki/Libevent
http://en.wikipedia.org/wiki/Epoll

Damit werden Verbindungen allerdings nur gleichzeitig/parallel auf "Änderungen" überprüft.
Die Ein- und Ausgabe gehe ich bis dato sequenizell an.

Gruß,
Patrick-Oliver

edit: www.fefe.de/scalable-networking.pdf ist imo ebenfalls interessant.

--
To follow the path: look to the master, follow the master, walk with the master, see through the master, become the master.

 
Mal so in die Runde gefragt: Wie versendet Ihr eine Nachricht an viele Teilnehmer (TCP)?

--
To follow the path: look to the master, follow the master, walk with the master, see through the master, become the master.

 
  • (nur registrierte Mitglieder)