ERLEDIGT
NEIN
NEIN
ANTWORTEN
7
7
ZUGRIFFE
884
884
EMPFEHLEN
-
Hallo !
Ein Freund und ich versuchen ein kleines Multiplayerspiel im Stile der bekannten Browsergames auf Java Basis, eben ohne Browser auf die Beine zu stellen, um uns ein wenig in Javaprogrammierung zu üben. Er programmiert zurzeit die Spiellogik an sich und ich habe die Aufgabe, die Datenbankschnittstelle zu erstellen. Er stellt es sich so vor, dass ich eine eigene Applikation, also eine Art SQL-Server programmiere. Nun ist meine Frage, ob es sinnvoll ist, dafür ein eigenes Programm zu schreiben und wenn ja, wie ich am besten die Kommunikation (über Sockets?) zwischen den beiden Applikationen regle oder ob man diesen "Server" einfach in einem eigenem Thread laufen sollte ?! ...
Die Lösung sollte die größtmögliche Performance bieten, da eventuell relativ viele Clienten Transaktionen vornehmen können sollen.
Vielen Dank,
Stefan Lehmann
:-) möp
-
Wenn ihr größt mögliche Performanz wollt, so solltet ihr die DB-Schnittstelle direkt in das Programm mit einbauen. Am besten ihr macht euch eine Klasse die entsprechenden DB-Aufrufe enthält. Sonst wird das ganze erst in TCP-Verpackt, dann in IP gehäckselt und läuft dann über das OS um das ganze dann wieder Rückwärts zu machen. Allerdings würde ich an eurer Stelle die Location der DB Variabel halten (ist aber auch kein Problem - das ist nur der Connection-String).
Ob eure DB-Anwendung einen 2ten Thread braucht - weiss ich nicht. Vermutlich aber wird sie für jeden Anwender der von aussen verbindet eine eingenen Thread brauchen.
Wenn ihr mehr über die Art eures Spieles schreiben würdet, könnte ich euch vielleicht mehr helfen.
-
Ja, das habe ich mir auch so gedacht .. Eigene Threads für die Spieler gibt es schon.
Das Spiel soll eine Art Aufbau-Strategiespiel werden. Mittlerweile existiert ein Server und ein TestClientprogramm ... Testclients können sich über einen bestimmten Port mit dem Server verbinden und mit ihm kommunizieren. Mein Freund implementiert gerade eine Warteschlange, die Ereignisse, wie den Bau einer Einheit etc. zu entsprechender Serverzeit ausführt.
Ich muss mir nun überlegen, wie man das am besten datenbanktechnisch abbildet. Ich wollte bisher eigentlich MySQL als DB nehmen, bin mir aber nicht sicher, ob diese Datenbank für diesen Anwendungsfall ausreicht und ob man nicht lieber eine objektorientierte DB verwenden sollte ...:-) möp
-
10.08.04 11:02 #4
- Registriert seit
- Jun 2002
- Ort
- Saarbrücken (Saarland)
- Beiträge
- 9.886
- Blog-Einträge
- 29
Hallo!
Ich würde das ganze mal mit RMI versuchen, dann müsst ihr euch zumindest nicht mehr mit dem ganzen LowLevelzeugs herumärgern ...
Gruß Tom
-
Hm .. die Möglichkeit kannte ich gar nicht .. Ich schau mir das mal an, Danke
:-) möp
-
10.08.04 11:12 #6
- Registriert seit
- Jun 2002
- Ort
- Saarbrücken (Saarland)
- Beiträge
- 9.886
- Blog-Einträge
- 29
Hier mal ein Beispiel dazu:
http://www.tutorials.de/tutorials166898.html
Gruß Tom
-
MySQL sollte auf jeden Fall ausreichen. Ihr könnt ja die Objektorientiertheit in den Zugriffsklassen kapseln. Da nur eine Applikation auf die DB zugreift, sollte das also kein Design-Problem darstellen.
(OT - guten Morgen Thomas)
-
Danke schön an euch beide
und ähm Guten Morgen .. ?! Hier gibts gleich Mittag
:-) möp
Ähnliche Themen
-
Kommunikation zwischen zwei Anwendungen
Von rabado im Forum .NET Web und KommunikationAntworten: 3Letzter Beitrag: 12.08.10, 11:35 -
Kommunikation zwischen zwei C++ Anwendungen
Von ohmo26 im Forum C/C++Antworten: 3Letzter Beitrag: 06.05.09, 20:56 -
Kommunikation zwischen zwei Anwendungen
Von Meldur im Forum .NET Web und KommunikationAntworten: 2Letzter Beitrag: 05.05.08, 18:21 -
Kommunikation zwischen Java-Anwendung und Flash
Von FunkyMonkey im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 1Letzter Beitrag: 04.09.07, 12:13 -
Kommunikation zwischen zwei Applets
Von d_ausstroit im Forum JavaAntworten: 2Letzter Beitrag: 13.05.05, 08:14





Zitieren

Login





