AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Firebird embedded und Events
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird embedded und Events

Ein Thema von Perlsau · begonnen am 16. Feb 2014 · letzter Beitrag vom 16. Feb 2014
Antwort Antwort
Seite 1 von 2  1 2      
Perlsau
(Gast)

n/a Beiträge
 
#1

Firebird embedded und Events

  Alt 16. Feb 2014, 12:56
Datenbank: Firebird • Version: 2.5 • Zugriff über: IbDac
Moin allerseits,

ich entwickle eine multiuserfähige Datenbank-Anwendung für einen Kunden, der dafür keinen Server bereitstellen kann/will, sondern möchte, daß Datenbank und Anwendung auf einem Netzlaufwerk liegen, auf das alle potentiellen Anwender Zugriff haben. Das stellt eigentlich kein Problem dar, wäre da nicht der leidvolle Umstand, daß mit der Embedded-Variante keine Datenbank-Events weitergegeben werden können, da kein gemeinsamer Server existiert. Die mit der Datenbank verbundenen Clientrechner sind aber darauf angewiesen, auf Änderungen an der Datenbank, die ein beliebiger Client gemacht hat, reagieren zu können. Natürlich kann ich via Timer alle paar Sekunden die entsprechenden Queries refreshen, eine andere Möglichkeit ist mir bislang leider nicht eingefallen. Die Clientrechner befinden sich alle im selben Netzwerk.

Hat irgend jemand eine Idee, wie man es sonst noch realisieren könnte, daß jeder Client jede Änderung an der DB, die von einem anderen Client ausgelöst wurde, mitbekommt? Ansonsten muß ich wohl noch weitere Überzeugungsarbeit bei meinem Kunden leisten, damit er einsieht, daß ein Datenbank-Server weitaus mehr Vorteile bietet.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 13:25
Du könntest z.B. das Eventsystem basierend auf Netzwerkbroadcasts selber Nachbauen. Das wäre aber imho nicht ratsam. Bei mehreren Benutzern führt eigentlich kein Weg an einem Server vorbei.
Wenn es keinen Server gibt könnte auch ein Client die Serverfunktionalität übernehmen; auch dynamisch ( 1. Client ist Server).
Aber bei mehreren Clients bietet sich ein Server auch unabhängig von Deinem Programm an.
Markus Kinzler
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#3

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 13:36
Der Begriff "Netzwerkbroadcasts" war mir bis dato völlig unbekannt, werd' ich aber gleich im Anschluß mal recherchieren.

Wie das mit dem dynamischen Server funktionieren soll, ist mir nicht so recht klar: Woher wissen die Clients auf den später eingeschalteten Rechnern, ob schon ein anderer gestartet wurde? Laut Administrator des dortigen Systems ist dort angeblich kein Serverbetrieb möglich, da alle PCs (ca. 50) via Switch miteinander verbunden sind (wovon ich auch keine Ahnung habe). Ich hatte auch schon vorgeschlagen, einen der vier Büro-PCs (die anderen sind Schulungs-PCs in einem separaten Schulungsraum) als Server einzusetzen, das wollte der Admin jedoch nicht (keine Ahnung warum). Ich mach das hier zu Hause ja genau so: Einer meiner Rechner ist Datenbank-Server, obwohl ich den auch zum Entwickeln Testen benutze. Und die Datenbank-Datei kann ja trotzdem auf dem Netzlaufwerk verbleiben, eigentlich sogar die ganze Anwendung ...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 14:00
Ein Broadcast geht an alle Rechner eines Ethernet-Segmentes.

Der erste Client schreibt sich bzw. seine Adresse in eine Ini oder XML-Datei. Die weiteren Clients können diese dort Auslesen.

Btw. 50 Clients im Peer-To-Peer Betrieb finde ich sehr komisch.
Markus Kinzler
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#5

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 14:10
Ein Broadcast geht an alle Rechner eines Ethernet-Segmentes. Der erste Client schreibt sich bzw. seine Adresse in eine Ini oder XML-Datei. Die weiteren Clients können diese dort Auslesen.
Ahaaa! Und wenn der erste Client ausgeschaltet wird, löscht er seinen Eintrag wieder. Potentielle Gefahr: Wer als erstes kommt, geht meistens auch als erstes und schaltet seinen Rechner aus, währen die anderen noch dranhängen. Klingt irgendwie nicht sehr erfreulich ...

Btw. 50 Clients im Peer-To-Peer Betrieb finde ich sehr komisch.
Wie gesagt, ich hab von der dortigen Vernetzung keinen blassen Schimmer. So wußte ich bis eben auch nicht, daß Switches Peer-To-Peer-Verbindungen nutzen. Es handelt sich um einen Verein mit wenig Geld ... vermutlich wäre jede andere Lösung zu teuer ...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 14:23
Peer-To-Peer bedeutet ohne Server. Mit den Switches hat das nichts zu tun, auch wenn der Admin das zu meinen scheint. Ich habe ca 10 Server mit über 100 Clients zu verwalten und verwende auch Switches ( wie ca 100% aller Netze).

Wenn ein anderer Client keine Verbindung mehr zum Server bekommt, muss er dann natütlich einspringen.

Aber bei 50 Clients muss eigentlich ein Server her. Ich frage mich wie er ohne Server seine Benutzer verwaltet ( auf jedem Client alle Nutzer anlegen oder auf Authentifizierung verzichten; beide eigentlich keine Optionen!)

Bei 50 Clients kommt denen imho jede serverlose Lösung auf die Dauer teurer.

Auf wie vielen Clients läuft Deine Anwendung?
Markus Kinzler
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#7

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 14:50
Peer-To-Peer bedeutet ohne Server. Mit den Switches hat das nichts zu tun, auch wenn der Admin das zu meinen scheint. Ich habe ca 10 Server mit über 100 Clients zu verwalten und verwende auch Switches ( wie ca 100% aller Netze).
Es gibt nur drei Benutzer auf allen PCs: Admin, Büro und Allgemein. Das Passwort für Allgemein ist auch Besuchern bekannt, weil der Verein Besuchern kostenlosen Internetzugang zur Verfügung stellt (für Job-Recherche und Online-Bewerbung). Auch an den Schulungs-PCs meldet man sich gewöhnlich mit Allgemein an. Die Mitarbeiter verfügen zusätzlich über das Büro-Passwort, und der Admin allein über das Admin-Passwort. Alle drei User sind auf allen PCs gleich angelegt.

Übrigens ist es wohl nicht der dortige Admin, der keine Ahnung hat, sondern ich

Wenn ein anderer Client keine Verbindung mehr zum Server bekommt, muss er dann natütlich einspringen.
Das hab ich jetzt eher nicht verstanden

Aber bei 50 Clients muss eigentlich ein Server her. Ich frage mich wie er ohne Server seine Benutzer verwaltet ( auf jedem Client alle Nutzer anlegen oder auf Authentifizierung verzichten; beide eigentlich keine Optionen!)
Keine Ahnung, ob er Benutzer verwaltet. Wie gesagt, es sind nur drei Benutzer auf allen PCs verfügbar. Zwei der Büro-PCs werden immer von denselben beiden hauptamtlichen Mitarbeitern verwendet (die auch täglich anwesend sind), die beiden anderen Büro-PCs von den ehrenamtlichen, die nur stunden- oder tageweise dort arbeiten. Es soll aber auch möglich sein, daß ein Mitarbeiter auf den Schulungsraum ausweichen kann, wenn alle anderen Plätze belegt sind. Schulungen finden meist abends oder Samstags statt, wenn der Tagesbetrieb (Beratungen) beendet ist.

Bei 50 Clients kommt denen imho jede serverlose Lösung auf die Dauer teurer.
Keine Ahnung. Meist sind ja eh nur um die 10 PCs eingeschaltet, nur bei Schulungen, die der Admin dort abhält, sind auch die Schulungs-PCs in Verwendung. Ich kann das nicht wirklich beurteilen, was teurer und was billiger wäre. Werde mich nochmal eingehend erkundigen müssen.

Auf wie vielen Clients läuft Deine Anwendung?
Also die Anwendung soll in der Regel nur auf vier Clients gleichzeitig laufen. Mehr Mitarbeiter sind nur selten gleichzeitig vor Ort. Die Anwendung soll aber von allen PCs aus aufgerufen werden können, so daß der Admin, der derzeit auch Kassenwart ist, z.B. auch vom Schulungsraum aus seine Arbeit machen kann, wenn in den Büros gerade Beratungs-Termine stattfinden. Zum Netzlaufwerk hat man nur Zugang, wenn man mit Büro oder Admin an einem der PCs angemeldet ist.

P.S.: Ich hab gerade mit dem Admin telefoniert, es sind "nur" 35 PCs, ich hatte nur geschätzt, nachdem ich am vergangenen Freitag kurz dort gewesen bin.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 14:57
Was für ein Gerät stellt denn das Netzlaufwerk zur Verfügung?
  • Windows-Rechner: Firebird-Server dort installieren
  • Linux-Rechner: Webserver mit php-Skript
  • Dummes NAS: doof
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#9

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 14:59
Ist nur ein externes Laufwerk mit Netzwerkanschluß ...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Firebird embedded und Events

  Alt 16. Feb 2014, 15:15
Da kommt er an welches. Es gibt für manche auch Pakete zum Nachinstallieren.
Alternativ installiert man einen anderes OS darauf ( war letztens ein Artikel in der c't).
Oder nimmt einen Microserver
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 03:48 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