Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Was tun bei Serverausfall (https://www.delphipraxis.net/117760-tun-bei-serverausfall.html)

TeronG 24. Jul 2008 10:12

Datenbank: Microsoft SQL Server Standard Edition • Version: 9.00.3054.00 • Zugriff über: ADO

Was tun bei Serverausfall
 
Was macht ihr bzw. eure Anwendungen, wenn der Server ausfällt bzw. gestoppt wird weil Updates installiert werden müssen?

ALSO ...
Meine Programme erfassen Messwerte und wollen diese sekündlich bzw minütlich in eine Tabelle schreiben.
Wenn nun wieder mal n Update oder sonstige Wartungsarbeiten stattfinden würden diese ja "ins leere" laufen.

Notfalls müsste ich dann bei Verlust der Verbindung die Daten selber zwischenspeichern (Typisierte Datei?) und diese dann wieder per Hand zurückspulen.
Da das auch einige Programme betrifft die nicht von mir sind währe so eine art Client-Tool das das automatisch macht ideal.

Kennt ihr da was?
Oder wisst ihr ne andere einfache Lösung die Daten zwischen zu speichern? Notfalls kann ich hald "nur" meine Programme absichern.

mkinzler 24. Jul 2008 10:15

Re: Was tun bei Serverausfall
 
Programme schreibt in lokale DB (MSDE/MS express) und per Replikation in Server-DB

TeronG 24. Jul 2008 10:35

Re: Was tun bei Serverausfall
 
Die Daten auf dem Server "müssen" aber aber, sofern möglich, immer aktuell sein. :?

Das würde dann ja bedeuten, dass ich sekündlich ein Replik (Synchronisation) machen müsste!? :gruebel:

Wie sieht das dann mit der Netzlast aus? Müsste ja dann immer nur einen Datensatz aktualisiert werden. Wie viel Overhead fällt denn da an?

mkinzler 24. Jul 2008 10:40

Re: Was tun bei Serverausfall
 
Kommt auf Replikationstool, ob diese in einem zeitlichen Intervall oder getriggert erfolgt.

generic 24. Jul 2008 11:06

Re: Was tun bei Serverausfall
 
Du brachst Hochverfügbarkeit!

Der SQL-Server kann geclustert werden.

Dann solltest du dein Programm noch um Clusterfunktionen erweitern.
So kannst du auf 99,999% Verfügbarkeit kommen.

mkinzler 24. Jul 2008 11:12

Re: Was tun bei Serverausfall
 
Das ist aber eine Kostenfrage

TeronG 24. Jul 2008 11:42

Re: Was tun bei Serverausfall
 
Zitat:

Zitat von generic
Du brachst Hochverfügbarkeit!

Naja...
Auf die sekündlichen Werte kann ich notfalls für paar Minuten verzichten. Ich speichere damit die "aktuellen Istwerte" und überschreibe die alten immer.
Aber die minütlichen Messwerte müssen erhalten bleiben.

Zitat:

Zitat von generic
Der SQL-Server kann geclustert werden. ... auf 99,999% Verfügbarkeit kommen.

Bei Updates werden dann also nur einzelne Cluster heruntergefahren und gepatcht?
Und ich arbeite dann einfach mit einem anderen, der noch läuft, weiter oder wie kann ich mir das vorstellen?

Zitat:

Zitat von mkinzler
Das ist aber eine Kostenfrage

wat mut dat mut ^^
Wenn wir sonst keine Lösung finde müssen sie hald mit den Kosten oder dem Ausfall leben. :stupid:

Aber die Diskussion darf dann mein Chef mit der IT & Co. führen ^^

mkinzler 24. Jul 2008 11:51

Re: Was tun bei Serverausfall
 
Du hättest dann mehrer Server mit der lusterversion von Windows Server, auf denen dann die Clusterverion des SQL-Servers läuft.
Als ich würde die Antwort meiner Chefs schon kennen.

ken_jones 24. Jul 2008 12:31

Re: Was tun bei Serverausfall
 
Replikation ist wie schon gesagt die billigste und einfachste Lösung. Gross Overhead gibts da nicht, denn die Replikation ist keine Synchronisierung.
Ich kenn den MS SQL Server nicht, aber bei Oracle gibts noch das AQ (Advanced Queueing), das verwenden wir selber um mit unseren Firmen auf allen Kontinenten zu kommunizieren. Updates gibts da je nach Mandant zu jeder Tageszeit, aber dank Queueing ist das kein Problem mehr. Vielleicht kennt MS SQL auch ein Queueing? MSMQ?

Boppe 24. Jul 2008 13:10

Re: Was tun bei Serverausfall
 
Hallo Zusammen!
Mal ne kleine Zwischenfrage - Wie sieht´s denn mit der Performance bei geclusterten Servern aus?

TeronG 24. Jul 2008 14:01

Re: Was tun bei Serverausfall
 
ja nee Cluster sind wohl tatsächlich n bissl überdimensioniert ^^

Ein fertiges Tool, daß einfach alles "abfängt" währe zwar schön gewesen aber man kann ja nicht alles haben. :roll:

Ich werde es wahrscheinlich mit der Replikation versuchen. Klingt am einfachsten.

Oder falls das dem Chef lieber ist nur bei Ausfall zwischenspeichern und danach zurückspulen ... :gruebel: (da "spar" ich mir nen lokalen SQL Server)

Sanchez 24. Jul 2008 14:18

Re: Was tun bei Serverausfall
 
Hallo,

Wenn du dir den lokalen SQL Server sparen willst, warum lässt du dein Tool den Job nicht in 2 Schritten erledigen. Ein Teiljob erfasst die Messwerte und legt schreibt lokal Dateien. Davon asynchron läuft ein zweiter Job, der die Daten aus den Dateien liest und in die DB schiebt und die Dateien löscht, vorausgesetzt es besteht Verbindung. Solange keine Verbindung besteht, fallen eben Dateien an.

grüße,
Daniel

mkinzler 24. Jul 2008 14:20

Re: Was tun bei Serverausfall
 
Zitat:

Zitat von Sanchez
Hallo,

Wenn du dir den lokalen SQL Server sparen willst, warum lässt du dein Tool den Job nicht in 2 Schritten erledigen. Ein Teiljob erfasst die Messwerte und legt schreibt lokal Dateien. Davon asynchron läuft ein zweiter Job, der die Daten aus den Dateien liest und in die DB schiebt und die Dateien löscht, vorausgesetzt es besteht Verbindung. Solange keine Verbindung besteht, fallen eben Dateien an.

grüße,
Daniel

Zitat:

Da das auch einige Programme betrifft die nicht von mir

generic 24. Jul 2008 14:40

Re: Was tun bei Serverausfall
 
Ja, jeder Server kann einzeln runtergefahren werden (natürlich nacheinander und nicht gleichzeitig).
Der Cluster läuft in der Sparfassung Aktiv/Passiv.

Kosten sind überschaubar.
HP DL320 Server sind gerade günstig.
Brauchen ja nur viel Ram haben, massige CPU und wenig Festplatte zum booten.
Ein 2 Knoten Cluster kann mit dem Windows Ent. Server 2008 gemacht werden.
(evtl. auch mit dem Std. bin mir da aber nicht ganz sicher
Hier steht das auch der normale Server gehen soll. In den Schaubilder steht allerdings das Gegenteil:
http://technet2.microsoft.com/window....mspx?mfr=true

Wir nutzen Ent.
)
Ein günstiges SAN dazu als Quorum.

Ich über den Daumen <3000€ inkl. Hardware und Software.
Allerdings ist es das billigste vom billigsten.

Was Grundsätzlich nicht viel Geld ist, da man dafür teurer Ausfallzeiten vermeidet.

ken_jones 24. Jul 2008 21:22

Re: Was tun bei Serverausfall
 
Zitat:

Zitat von Boppe
Hallo Zusammen!
Mal ne kleine Zwischenfrage - Wie sieht´s denn mit der Performance bei geclusterten Servern aus?

Wir haben ein RAC im Einsatz. Nach Optimierungen von IBM und Oracle bis zum geht nicht mehr ist die Performance etwa 5%-10% niedriger als bei einem Einzelserver. Dafür aber "ziemlich" Ausfallsicher. Kostenpunkt (Quad Xeon/128GB RAM) +30'000.- (CHF) gegenüber Einzelserver ohne Lizenzen.
Wir hätten noch 4 Steckplätze für weitere Prozessoren drin, mit denen würden wir wohl die Performanceeinbussen wieder wettmachen, jedoch kostet unsere Oracle Lizenz pro Prozessor, also lassen wir das... ...vorerst.

Dann haben wir noch 35 Citrix Server auf 4 geclusterte IBM Blades virtualisiert, das ist der Hammer! Die Applikationen laufen alle schneller als vorher und preislich enorm günstiger als die Einzelserver. Cluster+VM kann ich empfehlen! Aber für TeronG's Anliegen wär das Overkill.

Reinhard Kern 25. Jul 2008 01:23

Re: Was tun bei Serverausfall
 
Zitat:

Zitat von TeronG
Was macht ihr bzw. eure Anwendungen, wenn der Server ausfällt bzw. gestoppt wird weil Updates installiert werden müssen?
...

Hallo,

das ist völlig unkritisch - meine Messeinheiten können 1 Tag (früher) oder 4 Tage (heute) ohne PC-Verbindung Daten in den eigenen Batterie-gestützten Speicher erfassen. Der PC holt sich Daten, die er noch nicht hat, basierend auf dem Zeitstempel der Messung, arbeitet also völlig asynchron; nach Ausfall oder Abschalten werden fehlende Daten einfach nachgeholt, notfalls auch von einem anderen System aus übers Internet.

Logischerweise sollten daher die Messeinheiten mit USV abgesichert werden, damit die Erfassung nicht unterbrochen wird, für PC und Server ist das garnicht nötig.

Softwaretechnisch ist das recht einfach: der PC prüft die vorhandenen Daten und stellt fest, welche bereits übermittelt wurden und welche als nächstes dran wären, z.B. mit dem Zeitstempel X, dann fragt er die Messeinheit nach diesen Daten. Sind die nicht verfügbar, wiederholt er die Frage nach ein paar Sekunden. Bekommt er sie, werden sie abgespeichert und er fragt nach Daten X+1, darauf antwortet die Einheit, dass als nächstes z.B. X + 300 (= 5 Min) dran wäre. Der PC fragt nach X+300 usw. usw.

Gruss Reinhard

TeronG 28. Jul 2008 10:32

Re: Was tun bei Serverausfall
 
Ich traue es mich ja fast nicht zu schreiben. :oops:
Hatten ein Meeting und dabei kam raus, daß sie "für die paar Minuten" auf die Daten verzichten können. :wall:

Also werde ich vorerst alles so lassen wie es ist.

Das kommt aber bestimmt noch mal. (Ich kenne doch meine Pappenheimer!)
Und dann werde ich wohl ne lokale DB verwenden um dann die fehlenden Daten "nachzureichen". (FIFIO?, Replikation, ...)
Naja mal sehen wenn's so weit ist. :roll:

Aber dennoch DANKE für eure Hilfe. :thumb:

stifflersmom 28. Jul 2008 10:48

Re: Was tun bei Serverausfall
 
Zitat:

Zitat von TeronG
Ich traue es mich ja fast nicht zu schreiben. :oops:
Hatten ein Meeting und dabei kam raus, daß sie "für die paar Minuten" auf die Daten verzichten können. :wall:

Typischer Fall von "Wasch mich, aber mach mich nicht nass"...

generic 28. Jul 2008 10:50

Re: Was tun bei Serverausfall
 
Zitat:

Zitat von TeronG
Hatten ein Meeting und dabei kam raus, daß sie "für die paar Minuten" auf die Daten verzichten können.

So ist es meistens. Anders sieht es in Unternehmen aus welche z.B. viele stehende Kosten haben wie Miete, Gehälter usw.
Wenn das System ausfällt und du jede Stunde 2000€ bezahlst für nichts, dann überlegst du dir so etwas wie Cluster schon.
Es kommt auch immer nicht gut, wenn ein Kunde anruft und der Agent sagen muss "unsere EDV ist ausgefallen, ich kann nichts für sie tun".

TeronG 28. Jul 2008 11:30

Re: Was tun bei Serverausfall
 
Da wir keine Produktion sind haben wir auch keine Ausfallkosten und die meisten Anlagen (sollten) auch nur unter Beaufsichtigung fahren. Notfalls müssen sie halt einen Versuch nochmal machen. :stupid:

Naja ... spätestens wenn der "Kunde" anruft weil ihm "wichtige" Daten fehlen wird das Thema wohl neu angesprochen.
Und ich kann dann sagen: "Ich habs doch gleich gesagt! Bähh!" ... hmm :gruebel: oder zumindest könnte ich es sagen werde es aber lieber sein lassen. :mrgreen:

Codewalker 28. Jul 2008 15:30

Re: Was tun bei Serverausfall
 
Ich habe vor einiger Zeit eine Temperatur und Feuchtemessung geschrieben. Dabei wurden alle Messwerte, sobald die Datenbank weg war, in eine lokale Datei geschrieben und bei Verfügbarkeit der Datenbank in die DB gespeichert. Nachteil ist natürlich, dass man die Daten in der Zeit nicht auswerten kann.

TeronG 28. Jul 2008 15:51

Re: Was tun bei Serverausfall
 
Jo .. Typisierte Datei .. FIFO.. auch schon überlegt ^^

Zitat:

Zitat von Codewalker
Nachteil ... in der Zeit nicht auswerten kann.

Da sich alle außer dem Anlagenfahrer die Daten aus der Datenbank holen müssen, die offline bzw. nicht erreichbar ist, währe das egal ^^

Aber wie gesagt ist das vorerst eh kein Thema mehr. :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz