Docx zu pdf mit openoffice headless viel zu langsam

Habe ich mit PHPWord für docx-Dateien zu generation. Und es funktioniert bestens.
Nun habe ich aber die müssen auch zur Verfügung stellen, einige dieser Dateien auf eine pdf-version.

Nach ein paar Recherchen fand ich PyODConverter die Verwendung OOo. Schien eine ganz gute option, da möchte ich nicht angewiesen auf Drittanbieter-web-services. Ich versuchte es auf meinem Rechner und es funktioniert belangt, so habe ich angewendet, es auf meinem server auch. Es dauerte ein wenig länger, aber ich habe es geschafft, um es arbeiten auch dort.

Gibt es jedoch eine (schlechte) Sache. Auf dem server dies dauert etwa 21 Sekunden, um es getan, während auf meinem Rechner dauert es nicht länger als 2. 🙁
Das ist viel zu viel Zeit für meine Bedürfnisse, also ich habe versucht zu erkennen, was könnte die Ursache dieser Verzögerung.
Starten von openoffice in healess-Modus mit sockel Schöpfung ist okay.
So habe ich das python-Skript versucht, um herauszufinden, welcher Unterricht verursachen könnte, zu verlangsamen. Ich habe es eingeengt zu dieser Zeile:

context = resolver.resolve("uno:socket,host=127.0.0.1,port=8100;urp;StarOffice.ComponentContext")

Dies ist die Aktion, dass die Einnahme über 20secs zu führen.
Den code, wo es eingefügt wird:

localContext = uno.getComponentContext()
resolver = localContext.ServiceManager.createInstanceWithContext("com.sun.star.bridge.UnoUrlResolver", localContext)
try:
    context = resolver.resolve("uno:socket,host=127.0.0.1,port=8100;urp;StarOffice.ComponentContext")
except NoConnectException:
    raise DocumentConversionException, "failed to connect to OpenOffice.org on port %s" % port
self.desktop = context.ServiceManager.createInstanceWithContext("com.sun.star.frame.Desktop", context)

Irgendwelche Hinweise auf das, was könnte die Ursache dieser Verzögerung?
Ich habe ausgeschlossen das Dokument, die ich versuche zu konvertieren, da diese Operationen kommen vor.
Könnte es ein problem sein, mit 'uno'? Oder vielleicht ein anderes fehlenden Bibliothek, die verursachen könnte, dass nutzlose Tests während der resolve () - operation?

Alle Ideen sind willkommen. 🙂

Beste Grüße, Restless

  • was sind die hardware-specs der beiden Maschinen?
  • Mein server läuft auf einem AWS standard small instance. AWS-Instance-Typen Auf meinem Rechner CPU: AMD Athlon II X4 635 2.9 GHz-Socket AM3-Quad-Core-Prozessor, Arbeitsspeicher: DIMM Synchron-1333 MHz (2+2GB). Aber ich bezweifle, dass diese hardware verknüpft ist..
InformationsquelleAutor Restless | 2011-03-31
Schreibe einen Kommentar