AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Scheduler als Dienst mit Konfiguration in DB
Thema durchsuchen
Ansicht
Themen-Optionen

Scheduler als Dienst mit Konfiguration in DB

Ein Thema von hoika · begonnen am 29. Nov 2006 · letzter Beitrag vom 29. Nov 2006
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#1

Scheduler als Dienst mit Konfiguration in DB

  Alt 29. Nov 2006, 13:01
Datenbank: FB • Version: 1.5 • Zugriff über: sag ich nicht ;)
Hallo #,

mein erster Dienst läuft *freu*
Bisher legt er nur im Temp Dateien an,
aber immerhin ;

Ich muss "geplante Tasks" nachbauen,
weil der entsprechenden Firma keine Admin-Rechte
auf dem Server erlaubt sind (ist ne Zweigstelle).

Meine Überlegung war folgende,
eine Dienst läuft (was er auch schon macht),
er connected sich alle x Minuten mit der DB,
liest die Konfiguration aus und handelt entsprechend.
Dann wird ein Log geschrieben (in die DB und in den Speicher)
und der dienst legt sich wieder schlafen (delay oder sleep ist egal).

Die komplette Konfiguration erfolgt auf einem anderen Rechner.

Nun mein Problem,
wie kann ich am besten mitbekommen,
dass sich die Konfiguration geändert hat.

1. Events
aber traue mich nicht
FB1.5 ist nur eine der DB's, mit denen das laufen soll.

2. TCP
Socket, habe ich auch noch nie gemacht

3. bei jedem Aufwachen Testen, ob was geändert wurde
(das geht schnell, ich schreibe eh ein Log der Änderungen
und kann das mit dem Datum der letzten Konfigurationsänderung vergleichen)

Die Konfiguration ändert sich ausserdem kaum.


Was meint ihr ?
Wie geht man an sowas ran ?


Heiko
PS: muss mal den Dienst anhalten, habe nur ne 140GB Platte
Heiko
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: Scheduler als Dienst mit Konfiguration in DB

  Alt 29. Nov 2006, 13:15
Billiger Trick:

Auf deiner DB (egal welche) hast Du eine Tabelle "LastUpdate". Dort steht drin, welche Daten wann zum letzten mal angefasst wurden. Z.B. für jede Tabelle eine Zeile und ein Trigger auf die jeweiligen Tabellen, damit sie die Zeit in die "LastUpdate"-Tabelle reinlesen.

Dein Dienst wacht 1x pro Minute auf, liest die "LastUpdate"-Tabelle, schaut nach, ob sich etwas geändert hat, und handelt entsprechend.

Pronto.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Scheduler als Dienst mit Konfiguration in DB

  Alt 29. Nov 2006, 13:40
Hallo,

So wollte ich es ja auch machen, naja fast
Da ich eh alle Änderungen protokolliere,
suche einfach per Max() das letzte Änderungsdatum
und vergleiche mit Datum, wann der Dienst das letzte
mal die Konfiguration geladen hatte (aleo dessen letztem Änderungsdatum).

Die Frage war, geht es eleganter,
wobei der obige Ansatz den Vorteil hat, einfach zu sein.


Heiko
Heiko
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: Scheduler als Dienst mit Konfiguration in DB

  Alt 29. Nov 2006, 14:31
hoika, mit "max" erzeugst Du nur unnötigen Overhead im Server... Und wenn Du "MAX" verwenden willst, vergiss den Index auf der Spalte nicht, dann geht das nämlich fix
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Scheduler als Dienst mit Konfiguration in DB

  Alt 29. Nov 2006, 19:54
Hallo,

mach ich nicht
Jede Query kommt zuerst zum ibplanalyzer.


Heiko
Heiko
  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 10:29 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