codehunter
Goto Top

Taskplaner unter W2003 mit Intervallen kleiner 1 Minute

Hallo zusammen!

Ist es möglich, unter Windows Server 2003 geplante sich wiederholende Tasks mit einem Intervall kleiner als 60 Sekunden zu erstellen?

Jo, kurz und schmerzlos, das wars eigentlich schon face-smile

Grüßle
Cody

Content-Key: 152920

Url: https://administrator.de/contentid/152920

Printed on: April 23, 2024 at 07:04 o'clock

Mitglied: 60730
60730 Oct 13, 2010 at 08:40:41 (UTC)
Goto Top
Servus,

Nein
was ist das Ziel der Aktion?
Da gibt es sicherlich eine Alternative.
Member: Codehunter
Codehunter Oct 13, 2010 at 08:46:19 (UTC)
Goto Top
Auf dem Server läuft ein Apache (Intranet) welcher bisher alle 60 Sekunden eine Synchronisierung von Datensätzen mit einem anderen Server (Internet) durchführt. Da läuft einfach timergesteuert ein PHP-Script. Der Kunde wünscht nun kürzere Intervalle.

Ich hab schon überlegt einen Endlos-PHP-Prozess zu bauen der dann seinerseits das Timing übernimmt. Aber dann funktionieren diverse Steuermechanismen auf dem Server nicht mehr gescheit (Kollateralschäden, höherer Zeitaufwand, höhere Rechnung)
Mitglied: 60730
60730 Oct 13, 2010 at 09:22:41 (UTC)
Goto Top
Moin,

Apache auf der Blows Büxse dann via PHP eine SQL? DB/Tabelle von A nach B schieben - und das in kürzerer Zeit als 60 sekunden?

Der Kunde hat aber nette Ideen face-wink

Ich würde die DBs (MYSQL?) Spiegeln, das ist der offizielle Weg für so ein "Problem" und das können die meisten DBs auch.

Gruß
Member: Codehunter
Codehunter Oct 13, 2010 at 09:35:41 (UTC)
Goto Top
Keine ganze Tabelle oder Datenbank - nur einzelne Datensätze. Das findet auch nur dann statt wenn das System eine Änderung an einem Datensatz vornimmt - dafür eignet sich das Spiegeln bei MySQL (haste recht gehabt) leider nicht so gut. Wie gesagt das System läuft ja, soll nur etwas weniger träge sein.
Mitglied: 60730
60730 Oct 13, 2010 at 10:08:40 (UTC)
Goto Top
ok,

dann mach folgendes:

Ich nehme einfach an, das PHP script wird in einer cmd gestartet?

  • kopiere diese cmd 3*

  • in die erste kopie schreibst du ein führendes
Ping localhost -n 10 >nul
  • die zweite bekommt ein
Ping localhost -n 20 >nul
  • und die dritte...
Ping localhost -n 30 >nul
Die läßt du alle so laufen, wie bisher.

Aber das sind 2 zusätzliche Jobs, die den Server auch zusätzlich Stressen.
Und überleg dir (wenn du diesen Weg nehmen willst) - wie du abfragen kannst, ob bereits ein vorhergestarteter task die Daten verschiebt.
gruß
Member: Codehunter
Codehunter Oct 13, 2010 at 10:58:54 (UTC)
Goto Top
Hmm, interessanter Ansatz... Ja PHP wird per cmd gestartet, genauer gesagt über ein VBScript für den WSH. Wenn ich das mir so überlege hält doch die Ping-Sequenz die Ausführung nur um die definierte Anzahl Pings auf.

Oder ich klimper mir dafür ne EXE zusammen. Ist eigentlich wurscht, wie. Hätte ich eigentlich selbst drauf kommen können face-smile

Zitat von @60730:
Und überleg dir (wenn du diesen Weg nehmen willst) - wie du abfragen kannst, ob bereits ein vorhergestarteter task die Daten
verschiebt.

Brauch ich nicht, das tuts schon seit jeher weil die Ausführungszeit der einzelnen PHP-Aktionen unterschiedlich lange dauern kann (auch mehr als eine Minute) und der Taskplaner nicht auf das Ende des letzten Prozesses warten kann. Darum wird vor dem Scriptstart ein Marker in der lokalen DB gesetzt und nach dem Scriptende wieder entfernt. So schnappt sich der nächste Task nicht nochmal die selbe Aktion.