Einzelnen Beitrag anzeigen
  #18 (permalink)  
Alt 04.12.11
Programmierer Programmierer ist offline
Mitglied
 
Registriert seit: Dec 2009
Beiträge: 96
Programmierer befindet sich auf einem aufstrebenden Ast
Standard

ich habe mich recht ausführlich mit dem Thema auseinandergesetzt, da ich selbst mehrere Trading-VPS laufen lasse.

Hier ist das Problem: Wir wollen einige Programme (z. B. Metatrader-Instanzen o.ä.) non-stop durchlaufen lassen, auch wenn der Hoster wegen Updates oder Stomausfall etc. den VPS mal neustartet. Wenn man einfach nur die Programme wie beim Desktop-Computer im Autostart installiert, werden diese neugestartet, wenn sich der jeweilige Benutzer beim VPS anmeldet, d.h. eine Sitzung eröffnet. Das passiert aber nicht direkt nach Reboot des VPS, sondern erst, wenn wir uns das erste Mal per RDP mit dem VPS verbinden.
Es reicht also nicht aus, die Programme im Autostart zu installieren. Wir müssen also nach Lösungen suchen, die gewünschten Programme direkt nach Systemboot zu starten.

Lösungen, die mir bekannt sind:
1.
a) Man nimmt einen VPS, der speziell ausgerüstet ist, und dafür ein Programm zur Verfügung stellt. Sowas gibts es bspw. bei den VPS von CNS (siehe auch Virtual Private Server Software for Online Traders - Trader Software - Commercial Network Services) Im VPS-Paket ist ein Programm "Autoboot" drin, das angeblich erlaubt, beliebig viele Programme direkt nach Systemstart zu starten, also genau, was wir wollen.
Ob und wie das Tool funktioniert, weiß ich nicht. Wahrscheinlich über einen Windows-Dienst.

b) Man installiert sich auf dem eigenen normalen VPS ein Spezialtool, was das gleiche macht wie Autoboot. Ich kenne da AlwaysUp (Run any Application as a Windows Service | AlwaysUp | Run/Start your exe/program at boot as a Windows 2008/7/Vista/2003/XP Service | Free Trial), da gibt einem eine riesige Palette an Überwachungs-, Kontroll- und Warnungsoptionen, um einen non-stop-Lauf mehrerer Programme zu gewährleisten.
Das Programm funktioniert gut und hat eine ordentliche Dokumentation und FAQ.

2. Man installiert einem "Custom Service". Trick dabei ist, dass Dienste von Windows direkt nach dem Systemboot gestartet werden und nicht erst nachdem eine Sitzung existiert. Man könnte also für alle Anwendungen, die man so braucht, einen Custom Service erstellen.
Das ist aber recht komplex, siehe How To Create a User-Defined Service.

3. Man meldet den jeweiligen Benutzer immer sofort nach Systemstart automatisch an. Das geht mit einem einfachen RegistryEintrag. Das würde dazu führen, dass die o.g. Autostartvariante wieder funktioniert. Man aktiviert also den Autologin für einen bestimmten Benutzer und legt für diesen in gewohnter Form Autostart-Einträge an, die dann sofort nach Systemstart ausgeführt werden.
Das ist die einfachste Methode. Aber nicht gerade die sauberste. Denn dann muss man das Passwort für den Benutzer im Klartext in der Registry hinterlegen. Und wenn man mal das PW ändert, muss man das in der Registry auch machen. Hier ist es zu empfehlen, einen nicht-Administrator-Account zu verwenden um das Sicherheitsrisiko zu minimieren

Fazit: Wer einfach nur den Autostart für die Programme will und kein Problem mit dem leicht erhöhten Sicherheitsrisiko hat, kann ruhig Variante 3 wählen. Sollen die Programme aber auch noch überwacht und keine Nutzersitzung offen sein, würde ich Variante 1b) nehmen.