wget und administrative cronjobs

Wer – so wie ich – gerne seine CRON-Tabelle mit Hintergrund-Jobs füllt, die der Server beispielsweise ein mal pro Tag erledigen soll, der sollte gerade in der Kombination wget und PHP-Script etwas aufpassen. Es gibt da einen Fallstrick, der nicht auf den ersten Blick sichtbar ist:

Angenommen, das PHP-Script braucht etwas länger. Und genau das ist ja in der Regel der Fall. Dazu legt man solche Aufgaben in den Hintergrund.

WGET fängt also an, die PHP-Seite abzurufen – und wartet, und wartet, und wartet… Das macht es 900 Sekunden, also 15 Minuten lang. Wenn das Script dann noch nicht fertig ist, dann gibt wget auf zu warten. Und hier kommt der Haken: Es hört dann nicht auf, sondern es versucht es gleich noch mal. Standardmäßig 20 mal.

Wozu das führt ist relativ klar: Es läuft jetzt ein weiterer Prozess, der noch mal das gleiche tut wie der erste Prozess. Der bremst in der Regel den ersten Prozess noch weiter aus und läuft selbst auch langsamer, da er mit dem ersten Prozess konkurriert. Nach 15 Minuten kommt dann der nächste Prozess dazu, alles wird noch langsamer, …

Deshalb immer dafür Sorgen, dass es nur einen einzigen Versuch gibt:
wget --tries=1 --spider http://www.example.com/cronjob.php

Oder alternativ:
curl http://www.example.com/cronjob.php

cURL setzt standardmäßig auf „Nicht wieder Versuchen„.

Anonym Surfen – Alle zwei Jahre wieder…

Meine Meinung zu Anonymizern und Anonymizing Proxies habe ich ja hier im Blog schon vor zwei Jahren und vor vier Jahren geäußert.

Und diese Meinung hat sich seitdem nicht geändert. Daran kann auch das Thema „Überwachung durch den Staat“ nicht viel ändern. So wenig ich auch überwacht werden möchte – den Staat interessiere ich in der Regel nicht (es sei denn, es geht darum, dass ich meine Steuern zahle). Es gibt aber andere Leute, die mit meinen Daten viel mehr anfangen können. Deshalb behalte ich meine Daten lieber bei mir und leite sie nicht über irgendwelche Proxies irgendwo in der Welt.

Passenderweise bin ich gerade über einen zum Thema gehörenden Link gestolpert: Almost All Implementations Of SSL Are Configured To Give Up Everything

Hier beschreibt ein „black hat“ Hacker in einem Interview wie er sich durch das Betreiben eines eigenen TOR exit nodes in 24 Stunden rund 250 Login-Credentials zu diversen Webseiten gesammelt hat – ohne sich dabei durch SSL (HTTPS) Verschlüsselung behindern zu lassen. Denkt daran, wenn ihr eure Daten über Systeme leitet, die ihr nicht kennt!