AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke ein Server, mehrere Clienten (Id/Indy)
Thema durchsuchen
Ansicht
Themen-Optionen

ein Server, mehrere Clienten (Id/Indy)

Ein Thema von Puhbaehr · begonnen am 29. Nov 2005 · letzter Beitrag vom 30. Nov 2005
Antwort Antwort
Puhbaehr
(Gast)

n/a Beiträge
 
#1

ein Server, mehrere Clienten (Id/Indy)

  Alt 29. Nov 2005, 13:44
Hallo!

Ich schreibe bereits die ganze Zeit an einem Server-Client-Programm. Funktionieren tut alles bisher ohne Probleme. Allerdings habe ich bisher immer nur einen Clienten verbinden lassen und mir heut die Frage gestellt, was passiert wenn mehrere Clienten gleichzeitig verbinden?

Client und Server machen sich ja nach dem Verbinden untereinander einen Port aus auf dem sie kommunizieren. Jede Verbindung bekommt so ihre(n) eigenen Port(s). Soweit ist alles klar. Nur, muss ich den Teil des "untereinander ausmachen" übernehmen oder übernimmt das die Komponente selbständig?

Indy-Version: 9

Vielen Dank schonmal im Voraus!

Gruß, Robert

PS: Wenn mehr Infos gewünscht sind, bescheid geben...wollte nur nicht wieder zu viel Beispielcode und Erklärung geben (vielleicht reicht das ja) denn ich will nicht wieder jemanden mit meinen Romanen erschlagen
  Mit Zitat antworten Zitat
Benutzerbild von MarcoWarm
MarcoWarm

Registriert seit: 10. Sep 2003
Ort: Großhennersdorf
532 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

Re: ein Server, mehrere Clienten (Id/Indy)

  Alt 29. Nov 2005, 14:11
Das mit den Ports ist nicht ganz korrekt (im Standardfall eines TCP/IP Servers zumindest)

Du legst als Entwickler fest, über welchen Port Client und Server miteinander plaudern. Der
port wird nicht jedesmal neu zwischen den beiden "ausgemacht". Du kannst dich also getrost
mit mehreren Clients gleichzeitig verbinden. Indy kümmert sich um den Rest.
Marco Warm
TUO
TheUnknownOnes.net
  Mit Zitat antworten Zitat
Benutzerbild von MisterNiceGuy
MisterNiceGuy

Registriert seit: 1. Jul 2003
Ort: Mannheim
919 Beiträge
 
Delphi 7 Personal
 
#3

Re: ein Server, mehrere Clienten (Id/Indy)

  Alt 29. Nov 2005, 14:41
Guck dir unbedingt die Indy Chat Demo an, da steht das ganz genau drin wie du mehrere Clients mit einem Server verbindest.
Jonas
Wenn mich jemand sucht, ich bin im Kühlschrank!

Informationen über das Duale Studium
www.jofre.de
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#4

Re: ein Server, mehrere Clienten (Id/Indy)

  Alt 29. Nov 2005, 15:33
Zitat von MisterNiceGuy:
Guck dir unbedingt die Indy Chat Demo an, da steht das ganz genau drin wie du mehrere Clients mit einem Server verbindest.
Mach ich gleich mal.

Zitat von MarcoWarm:
Das mit den Ports ist nicht ganz korrekt (im Standardfall eines TCP/IP Servers zumindest)

Du legst als Entwickler fest, über welchen Port Client und Server miteinander plaudern. Der
port wird nicht jedesmal neu zwischen den beiden "ausgemacht". Du kannst dich also getrost
mit mehreren Clients gleichzeitig verbinden. Indy kümmert sich um den Rest.
Ähm, also wie jetzt?
Ich leg z.B. fest Server horcht auf Port 7000.
Client sendet eine Anfrage von einem beliebigem Port X nach Port 7000 zum Server.
Der Server sendet wieder etwas von einem beliebigem Port Y zurück zu dem Port X des Clients und zwar die Nachricht, dass Zielport des Servers nun Port Y ist. Ab jetzt geschieht alles über diese beiden Ports bis...die Verbindung beendet wird.
Und Port X und Y werden (je nach Betriebssystem) mit jeder neuen Verbindung um eins erhöht. D.h. es würde der Client nach dem die Verbindung beendet wurde erneut beim Server auf Port 7000 anfragen...
So hab ich es zumindest bisher verstanden.
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#5

Re: ein Server, mehrere Clienten (Id/Indy)

  Alt 29. Nov 2005, 16:24
http://www.nickles.de/c/s/14-0005-112-10.htm
seite 10
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#6

Re: ein Server, mehrere Clienten (Id/Indy)

  Alt 29. Nov 2005, 17:27
Danke, hab mir jetzt nur Seite 10 angeschaut...nachdem sendet Client auf beliebigem Port an Server an Port 7000 und der Server von Port 7000 nach den Clientport zurück.

Gut, sobald Zeit ist werd ich mir noch den Rest anschauen. Also Danke vorerst!
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#7

Re: ein Server, mehrere Clienten (Id/Indy)

  Alt 30. Nov 2005, 13:14
Äh, Thema hat sich erledigt. Ich hab den Fehler gefunden.

Ich hab im ServerThread (OnExecute...) die Connection in einer Variablen der abgeleiteten Server-Klasse gespeichert Daran hatte ich gar nicht mehr gedacht, dass dann später mehrere Threads drauf zugreifen. Jetzt ist alles klar...

Also danke für die Hinweise!
Aufgefallen ist mir das übrigens nachdem ich das Beispiel mit dem Chat angeschaut hab und danach wieder bei meinem weiter gemacht hab...



Gruß, Robert
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz