Font
[thread]4285[/thread]

Multiclient Server: Konzeptproblem bei Doko Server



<< >> 4 entries, 1 page
esskar
 2004-03-23 04:17
#36946 #36946
User since
2003-08-04
7321 articles
ModeratorIn

user image
schau dir
IO::Socket::INET und
IO::Select

an
esskar
 2004-03-23 17:00
#36947 #36947
User since
2003-08-04
7321 articles
ModeratorIn

user image
hier ist mal ein beispiel

http://www.cotse.com/mailing-lists/todays/att-0000/01-dlfnbof.pl

der rest geht z.b. mit gethostbyname

siehe Socket module
poz
 2004-03-23 01:03
#36948 #36948
User since
2004-03-23
2 articles
BenutzerIn
[default_avatar]
Hallo,
ich bin im Moment dabei einen DoppelKopf Server zu programmieren, nun stoße ich jedoch schon bei der Konzeption auf größere Probleme.
Wie schaffe ich es mit 4 Clients "gleichzeitig" zu kommunizieren.
Ich würde gerne sowas haben wie ein Array mit 4 Handels, in dem ich jeweils die Kommunikation mit den Clients regeln kann...

mein erster Versuch:
1 Dad, der die eigentliche Arbeit macht
4 Childs forken, die im Prinzip nichts anderes tun, als sich um die Connection kümmern und die Daten an den "Dad" weiterleiten. Aber wie bekomm ich das hin ?
wenn ich mit Pipes, Socketpair, UNIX Domain Socket... arbeite
hab ich entweder genau den gleichen Aufwand wie als würde ich sofort einen "non forking Multiplex" basteln (wie man so schön sagt) sprich mit Select rumfummeln... oder ich hab probleme mit dem Blocking...
zweiter Versuch: sofort einen "non forking Multiplex" basteln ;)
ja aber wie... ? hat jemand da was brauchbareres als die Kurzanleitung von "Advanced Perl Programming". Ich brauch ja auch sowas wie bidirektionale Kommunikation...

Ich bin momentan fast so weit, einfach alles mit ner ID zu versehen und in eine Datei zu schreiben etwa so:
Server->Player1: your cards 3 13 17 23 36...
Player4->Server: I have an Solo: "IWAN"
die dann alle Childs ständig auslesen und sich raussuchen was sie was angeht ... allerdings ist das nicht gerade ellegant .. :)

hoffe ihr könnt mir helfen mfg Heinrich
poz
 2004-03-23 15:42
#36949 #36949
User since
2004-03-23
2 articles
BenutzerIn
[default_avatar]
ok, hab ich eigentlich schon gemacht, aber vielleicht komm ich ja heute etwas weiter ... ;)

Noch ein paar Fragen:
- Gibt es sowas sie ein Array mit Referenzen auf Handels ?
... ohne tie oder TypeGlobs zu verwenden ?
- wie bekomme ich die IP von einem Client raus, wenn ich
den (server) socket mit IO::Socket::INET geöffnet habe ?
<< >> 4 entries, 1 page



View all threads created 2004-03-23 04:17.