AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Client - Server - Admin
Thema durchsuchen
Ansicht
Themen-Optionen

Client - Server - Admin

Ein Thema von Antigo · begonnen am 5. Jan 2007 · letzter Beitrag vom 5. Jan 2007
Antwort Antwort
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#1

Client - Server - Admin

  Alt 5. Jan 2007, 14:30
Hi,
toller Titel ich weiss, aber mir ist wirklich kein besserer eingefallen. Er beschreibt aber sehr gut die Situation.

Es sieht so aus, das wir in einer Gruppe ein Netzwerk Spiel entwickeln, bzw. bald in die Testphase übergehen.
Um das ganze besser aufzuteilen haben wir uns damals entschieden das Projekt in 3 Bereichen zu entwickeln, eben Client, Server und Admin.
Der Server hat dabei 2 Sockets, eins für alle Clients und eins für den Admin.

Das ganze läuft dann so ab, das der Server auf dem Admin Port lauscht und der Admin sich schliesslich einwählt. Dann macht er die Grundeinstellungen und übermittelt sie dem Server. Der Server öffnet den Spielport für die CLients und diese können sich einwählen und darauf warten das der Admin das Spiel schließlich freigibt.


So alles schön und gut, solange die Situation ist, dass Admin und Server auf unterschiedlichen PC`s laufen. So war es ursprügnlich geplant. Das heisst, die Server Applikation läuft auf irgendeinem PC und der Admin (im Sinne von Spielstarter) kann sich von jedem beliebigen PC einwählen und ein Spiel starten.
Was ist aber, wenn Admin und Server auf dem selben PC laufen, was vielleicht eher die Regel ist? Der Spielstarter müsste in dem Falle 2 Appliaktionen starten und sich auf dem Server 127.0.0.1 einwählen.

Wie lässt sich das vereinfachen? Sollten wir vielleicht einfach den kompletten Servercode nochmal in den Admin reinpacken, sodass man auswählen kann, ob man sich auf einem Server einwählen kann, oder den Server gleich mitstarten will? In jedem Fall schickt man natürlich sinnlos Daten zur Netzwerkkarte die man auch intern verarbeiten könnte, aber den Server neu zu entwickeln ist keine Option, da das Programm mitte dieses Monats fertig sein muss.
Eine andere Alternative wäre, das Serverprogramm per ShellExcecute oder ähnlichem vom Admin Programm aus zu starten, aber was ist, wenn das Serverprogramm gelöscht wurde?


Lange rede kurzer Sinn: Es geht eigentlich nur darum den Umstand 2 Programme manuell öffnen zu müssen zu umgehen.


hat jemand eine Idee?


danke schonmal.

mfg
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Client - Server - Admin

  Alt 5. Jan 2007, 14:33
Hi,

die zwei Sockets beim Server laufen ja auf unterschiedlichen Ports.

Baut einfach in den Client 2 Sockets ein. Einer verbindet normal, der andere auf den Adminsocket am Server.

Hab ich das jetzt so richtig verstanden?
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#3

Re: Client - Server - Admin

  Alt 5. Jan 2007, 14:48
Nein

Also das Problem liegt bei der Trennung von Admin und Server. Bei den meisten Programmen ist es so, das Admin und Server in einem sind. Das heisst man öffnet das Serverprogramm, nimmt die Spieleinstellungen vor und startet das Spiel bzw. öffnet damit den Socket für die Clients.

Bei uns ist es jedoch so, das die Konfiguration des Spiels völlig losgelöst vom Serverprogramm ist. Am Server selber stellt man nur ein Passwort und einen Adminport ein auf dem man sich dann mit dem Admin einwählt um alle EInstellungen vorzunehmen. Das haben wir wie gesagt aus 2 Gründen gemacht, erstens weil wir dann die Entwicklung besser aufteilen konnten, und zweitens, damit der Server auf einem Server laufen kann, auf denn man vielleicht nicht immer physikalischen Zugriff hat, und damit man sich quasi "remote mässig" dort einwählen kann.

Unkomfortabel wird es halt nur wenn Admin und Server Programm auf dem selbeln Rechner laufen und man deshalb 2 Programme öffnen muss um ein Spiel zu starten. Und das würde ich gerne mit möglichst wenig Aufwand ändern.
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Client - Server - Admin

  Alt 5. Jan 2007, 15:01
Dann würd ich halt in den Server einen Button reinmachen, der den Admin startet.

Ich glaube ihr zerbrecht euch hier den Kopf über etwas, das bei der Deadline dritt- bis viertrangig ist
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#5

Re: Client - Server - Admin

  Alt 5. Jan 2007, 15:05
Zitat von DGL-luke:
Dann würd ich halt in den Server einen Button reinmachen, der den Admin startet.

Ich glaube ihr zerbrecht euch hier den Kopf über etwas, das bei der Deadline dritt- bis viertrangig ist
Jo, das wär auch eine Möglichkeit, allerdings müsste man dafür ja wissen, wo der Admin liegt und den Fall abfangen, das die Datei nicht da ist.

Im Prinzip hast du recht, so wichtig ist es nicht, aber ich könnte mir halt gut vorstellen das es ziemlich nervt jedesmal 2 Programme starten zu müssen, wenn man ein Spiel hosten will...
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  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 09:45 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