Skriptprogrammierung in Python

Auch wenn unser Fokus bei der Entwicklung von Oberflächen bei PHP, Delphi und Java liegen hat auch Python einen Stellenwert in unserer Palette von Programmiersprachen.

Zwar können Hintergrundprozesse auch durchaus mit PHP implementiert werden. Allerdings stößt man im Umfeld von Multithreading damit leicht an Grenzen.

Beispiel: nicht nur für uns selber machen wir Backups, auch Server von Kunden sichern wir täglich über das Web. Die eigentliche Abholung der geänderten Daten zu unseren Backupsystemen erledigen die Bordmittel der Betriebssysteme (z.B. rsync).

Doch die zeitliche Abfolge ist entscheidend darüber, ob das Backup bei begrenzter Leitungskapazität auch zügig und störungsfrei durchläuft. Bekommt jeder Server ein eigenes Zeitfenster, dann kann es zu Leerlaufzeiten kommen wenn auf dem Server an manchen Tagen nicht viel zu sichern ist. Wenn jedoch viele Änderungen erfolgt sind, so könnte das Zeitfenster zu klein sein und sich mit anderen Backups überlappen. Das wiederum reduziert die verfügbare Leitungskapazität noch mehr und es kommt in der Folge zu noch weiteren Überschneidungen.

Um die Leitungskapazität möglichst effizient auszunutzen haben wir ein Multithreading System in der Sprache Python implementiert, was seit vielen Monaten störungs- und wartungsfrei läuft.