java-forum.org
JBoss Seam
Alter Preis: 39,95 €
Jetzt: 0,00 €

zzgl. Versandkosten

Zurück   java-forum.org > Java - Programmierung > Datenbankprogrammierung

Datenbankprogrammierung Fragen zur Anbindung und Programmierung von Datenbanken bzw. Datenbankabfragen

Antwort     Ist dieses Thema erledigt?
Themen-Optionen Thema durchsuchen Ansicht
Alt 07.03.2010, 14:42   #1 (permalink)
Neuer Benutzer
Bit
 
Registriert seit: 07.03.2010
Beiträge: 4
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Standard Derby Embedded Server

Hallo,
ich bin zurzeit auf der Suche nach einer kleinen Embedded Datenbank, die ich für mein Programm (eine Art Bildverwaltung für Gebärdenbilder) verwenden kann.
Da ist mir natürlich gleich Derby aka JavaDB ins Auge gestochen. Das Problem ist aber, dass möglicherweise auch mehrere Leute gleichzeitig das Programm geöffnet haben sollen (wird auf einem Netzlaufwerk liegen). Das geht ja mit der Embeddedversion von JavaDB nicht direkt.
Da ich den (Datei-)Server nicht administriere, kann ich auch nicht dafür sorgen, dass ein DerbyNetzwerkserver immer laufen würde, mir wäre deswegen eine serverlose Lösung schon ganz recht.
Ich bin auf folgende Hybridlösung zwischen Server und Embedded Datenbank gestoßen:
Step 4: Derby Network Server
(ganz unten auf der Seite)
Es wird hier beim Start der ersten Programminstanz ein Derby Server gestartet, auf den dann alle weiteren Programminstanzen zugreifen.
Etwas konkreter beschreibt das IBM:
Help -

Nun zu meiner Frage:

Wenn diese erste Programminstanz nun beendet wird, verlieren doch alle weiteren Instanzen, die ja nur Clients sind, ihre Verbindung und müssen beendet und neu gestartet werden, damit sie wieder funktionieren.
Sehe ich das richtig, und was könnte man dagegen machen?


Vielen Dank schon im Voraus,

mfg

useru
Useru ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 07.03.2010, 17:27   #2 (permalink)
Benutzer
Byte
 
Registriert seit: 06.10.2009
Beiträge: 31
Abgegebene Danke: 0
Erhielt 1 Danke für 1 Beitrag
Ich glaube, das der Ansatz keine Lösung ist, weil sich der erste Client der die Datenbank öffnet zwar zum Server macht, aber die anderen Clients wissen noch nicht mit welcher IP-Adresse sie sich verbinden müssen um die Datenbank zu erreichen. Das könntest Du klären, indem Du den Server eine Properties-Datei anlegen läßt, in der Du die Server-IP bekannt machst. Beim Beenden wird die Datei wieder glöscht. Was ist mit Firewallregeln auf dem jeweiligen Serverhost?

Du machst es Dir einfacher, wenn Du Dich mit den Admins der Server unterhälst.


Viele Grüße

Thom
thom ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
Useru (11.03.2010)
Alt 11.03.2010, 10:03   #3 (permalink)
Neuer Benutzer
Bit
Themenstarter
 
Registriert seit: 07.03.2010
Beiträge: 4
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Vielen Dank, dann werd ich das wohl so handhaben.
Useru ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 10:10   #4 (permalink)
Java-Forum Team
IRC-Operator (Java-Chat)
Moderator
 
Benutzerbild von Noctarius
 
Registriert seit: 17.08.2007
Beiträge: 3.954
Abgegebene Danke: 2
Erhielt 153 Danke für 149 Beiträge
Alternativ einen UDP Request ins LAN schieben und anfragen ob es schon eine Instanz mit DB Zugang gibt, wenn ja IP zurückgeben lassen und dorthin connecten.

Die Variante mit dem freundlichen Admin ist aber besser (leider in vielen Firmen nicht umsetzbar).
Noctarius ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
Useru (11.03.2010)
Alt 11.03.2010, 10:12   #5 (permalink)
Neuer Benutzer
Bit
Themenstarter
 
Registriert seit: 07.03.2010
Beiträge: 4
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Ah, auch ne gute Idee, danke, ich werd wie du sagst erstmal das mit dem Admin versuchen. Ich hoffe ich muss den Broadcast weg gar nicht gehen dann.
Useru ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 14:09   #6 (permalink)
Stammbenutzer
Kilobyte
 
Benutzerbild von Guybrush Threepwood
 
Registriert seit: 19.05.2009
Beiträge: 324
Abgegebene Danke: 13
Erhielt 10 Danke für 10 Beiträge
Zitat: Noctarius
Beitrag anzeigen
Alternativ einen UDP Request ins LAN schieben und anfragen ob es schon eine Instanz mit DB Zugang gibt, wenn ja IP zurückgeben lassen und dorthin connecten.
Hi Noctarius,
wie funktioniert das genau, bzw. hast Du einen Link mit einem Code-Beispiel?

Viele Grüße und vielen Dank,
Guybrush
__________________
Unsere Regierung ist vielleicht nicht perfekt, aber sie ist vermutlich die Beste, die man für Geld kaufen kann.
Guybrush Threepwood ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 14:17   #7 (permalink)
Java-Forum Team
IRC-Operator (Java-Chat)
Moderator
 
Benutzerbild von Noctarius
 
Registriert seit: 17.08.2007
Beiträge: 3.954
Abgegebene Danke: 2
Erhielt 153 Danke für 149 Beiträge
MulticastSocket (Java Platform SE 6)
UDP Multicast Client in Java,Multicasting UDP in Java - Java Tutorials
Internet Programming with Java Course - UDP and Multicast Sockets
__________________
Lycia: Lycia (formerly known as Java XmlParser) is an event-based parser framework for being used on top of different structured datasources such as XML
http://code.google.com/p/lycia/
Noctarius ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
Guybrush Threepwood (11.03.2010)
Alt 11.03.2010, 14:18   #8 (permalink)
Neuer Benutzer
Bit
Themenstarter
 
Registriert seit: 07.03.2010
Beiträge: 4
Abgegebene Danke: 2
Erhielt 0 Danke für 0 Beiträge
Ich glaube er meint folgendes:
Eine Instanz des Programms eröffnet ja immer den Server. Nun muss man eben herausfinden, wo die Instanz läuft (also unter welcher IP) um zum Server verbinden zu können.
Das läuft dann über nen sog. UDP Broadcast, das wird Netzwerkspielen meist auch so Praktiziert.
Bei IPv4 funktioniert das, indem du an die IP xxx.xxx.xxx.255 (wobei die xxx deine Subnetzwerke darstellen) ein UDP Packet sendest. Dieses wird dann von deinem NetzwerkSwitch an alle angeschlossenen Geräte verteilt. Von denen muss natürlich jeder lauschen und die Instanz, die den Server laufen hat, meldet sich dann bei dem, der das Broadcast Paket gesendet hat mit: Ich bin der, der den Server am Laufen hat, hier ist meine IP.
Damit is die IP bekannt und es kann zum Server verbunden werden.

Edit: Ups, zu langsam ...

Geändert von Useru (11.03.2010 um 14:21 Uhr)
Useru ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 14:26   #9 (permalink)
Java-Forum Team
IRC-Operator (Java-Chat)
Moderator
 
Benutzerbild von Noctarius
 
Registriert seit: 17.08.2007
Beiträge: 3.954
Abgegebene Danke: 2
Erhielt 153 Danke für 149 Beiträge
Aber genau so in der Art war das gemeint.
__________________
Lycia: Lycia (formerly known as Java XmlParser) is an event-based parser framework for being used on top of different structured datasources such as XML
http://code.google.com/p/lycia/
Noctarius ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 14:36   #10 (permalink)
Stammbenutzer
Kilobyte
 
Registriert seit: 28.12.2009
Beiträge: 208
Abgegebene Danke: 1
Erhielt 13 Danke für 12 Beiträge
Funktioniert aber nur bedingt...
Hier bei uns in der Firma würde Ich spätestens am ersten Switch scheitern (und mit Glück vll 100 Rechner erwischen, wenn er es nicht ganz Blockt [wovon Ich eigentlich sogar ausgehe]!?!)... das ganze Systemweit zu broadcasten wäre (hier) unmöglich...

Also sollte man auch das vorher mal absprechen, oder zumindest ausprobieren.....

/Nachtrag: Mit Switch meine Ich nicht diese kleinen Käste die man Zuhause rumstehen hat, aber das hier soll ja offensichtlich auch irgendwo in einer Firma anwendung finden....
Firestorm87 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 14:44   #11 (permalink)
Java-Forum Team
IRC-Operator (Java-Chat)
Moderator
 
Benutzerbild von Noctarius
 
Registriert seit: 17.08.2007
Beiträge: 3.954
Abgegebene Danke: 2
Erhielt 153 Danke für 149 Beiträge
Das ist klar, aber in so einer Firmainfrastruktur kann ich davon ausgehen, dass dort mindestens ein Datenbankserver steht den man mitnutzen kann. Das klingt hier aber nur bedingt so.

Man muss nicht immer von riesigen Infrastrukturen ausgehen (bzw bei uns in der Firma würde es sogar noch lustiger werden, da blocken die Switches nicht nur die UDP Pakete, sondern ab einer bestimmten Anzahl (z.B. bei Skype) sperrt das Teil für 5 Minuten den ganzen Switchport :P

Aber ich denke so eine Situation ist hier nicht gegeben.
__________________
Lycia: Lycia (formerly known as Java XmlParser) is an event-based parser framework for being used on top of different structured datasources such as XML
http://code.google.com/p/lycia/
Noctarius ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 15:08   #12 (permalink)
Stammbenutzer
Kilobyte
 
Registriert seit: 28.12.2009
Beiträge: 208
Abgegebene Danke: 1
Erhielt 13 Danke für 12 Beiträge
Naja aber bei Infrastrukturen, wo es Systemadministratoren gibt, handelt es sich zumeist nicht um kleine Heimnetzwerke, daher kann man schon von professionelleren Geräten ausgehen.
Ob da nachher 15 oder 1500 User dran hängen spielt dann nur bedingt eine Rolle...

Und ja Ich gebe dir Recht, dass es dann eben auch möglich sein sollte sowas zentral zu implementieren...
Firestorm87 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 15:13   #13 (permalink)
Java-Forum Team
IRC-Operator (Java-Chat)
Moderator
 
Benutzerbild von Noctarius
 
Registriert seit: 17.08.2007
Beiträge: 3.954
Abgegebene Danke: 2
Erhielt 153 Danke für 149 Beiträge
Es kommt immer darauf an was als "Systemadministrator" tituliert wird. Wir haben auch einen, genau gesagt sogar 4 :P Mein direkter Vorgesetzter, ich, meine beiden Azubis. Aber keinen der sich nur darum kümmert.
Ich hab auch schon kleinere Firmen gesehen wo ein normaler "etwas PC-erfahrenerer" Mitarbeiter so genannt wurde, nur weil er wusste dass man auch Windows Server installieren kann oder alternativ ein Windows XP als Server aufgesetzt hat.

Wortwahl hat quasi nichts zu bedeuten :P
__________________
Lycia: Lycia (formerly known as Java XmlParser) is an event-based parser framework for being used on top of different structured datasources such as XML
http://code.google.com/p/lycia/
Noctarius ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 15:19   #14 (permalink)
Stammbenutzer
Kilobyte
 
Registriert seit: 28.12.2009
Beiträge: 208
Abgegebene Danke: 1
Erhielt 13 Danke für 12 Beiträge
Nagut, Ich habe bei dem "Systemadministrator" auch an jemanden gedacht, der sowohl das Netz, als auch die PCs Administriert...
Und damit mein Ich dann auch nicht nur "so tun als ob"

Gruß..
Firestorm

PS: Solche Leute sollte man lieber PC-Verantwortliche nennen Da macht einen dann die Wortwahl schon vorsichtiger beim hereininterpretieren der Tätigkeiten
/EDIT: Daher trägt aus meiner Abteilung auch niemand den Titel "Administrator", sondern alle nur "Entwickler" Da darf man sich dann doof stellen :P
Firestorm87 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort     Ist dieses Thema erledigt?

Lesezeichen

Latex Maths & Physics Editor ...

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
(HTTP) Suche embedded SOAP Server für eigenen Server mfernau Netzwerkprogrammierung 1 30.12.2009 11:59
Derby Network Server aus Java heraus starten RudiRakete Java Basics - Anfänger-Themen 0 02.04.2009 09:53
Datenbankmanager für Derby und MultipleOutputStream Ariol Codeschnipsel u. Projekte 3 13.08.2008 23:00
Fehler beim starten von Glassfish siassei84 Allgemeines EE 0 26.02.2007 17:43
FindServers - Server im LAN finden! Andy Codeschnipsel u. Projekte 2 22.09.2005 15:07


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:00 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de