Wie kann man die CPU- und Speicherauslastung von PhantomJS reduzieren?

8

Ich benutze PhantomJS über Pythons webdriver lib. Es frisst viel RAM und CPU, und es ist ein Problem, weil ich so viele Instanzen wie möglich ausführen möchte.

Einige Google's gaben mir nichts hilfreiches. Also werde ich direkt fragen:

  1. Ist die Größe wichtig? Wenn ich driver.set_window_size (1280, 1024) setze, wird es mehr Speicher als 1024x768 essen?

  2. Gibt es eine Option im Quellcode, die ohne echte Probleme ausgeschaltet werden kann und die zu einer erheblichen Speicherverringerung führt? Ja, ich brauche immer noch Bilder und CSS und JS laden und anwenden, aber ich kann einige andere Funktionen loswerden ... Zum Beispiel kann ich Caching ausschalten (und jedes Mal alle Mediendateien laden). Ja, ich muss es beschleunigen und es weniger gierig machen und ich bin bereit, es neu zu kompilieren ... Irgendwelche Ideen hier?

Vielen Dank!

    
Spaceman 15.03.2014, 13:31
quelle

1 Antwort

0

Ich nehme an, Sie rufen phantomjs einmal für jeden Renderjob auf. Dies erzeugt jedes Mal einen neuen phantomjs-Prozess. Sie könnten versuchen, so viele wie möglich in das one js-Skript zu packen und phantomjs einmal für den gesamten Stapel aufzurufen.

    
gtsouk 17.03.2014 14:12
quelle

Tags und Links