On 20/10/2017 10:04, Jens Tröger wrote:
Also, I have performance concerns for this approach: loading and running through just two documents simultaneously seemed to be unproportionally slow!?
As I mentioned before, while a single LO process can serve multiple clients simultaneously, and with low latency for starting a request, it will likely struggle to fully utilise all the threads of a modern CPU.
I believe you still haven't mentioned what the specific use case you're trying to achieve is - what are its requirements for interactiveness and/or throughput? (i.e. is it an interactive process that will primarily require low latency, a bulk process that requires high overall throughput but may not mind if individual requests are delayed for a short time, or something that requires both low request latency and high throughput?)
If you need both the lowest request latency and the highest throughput on a single machine, you may need to try adopting a hybrid model - start a pool of independent LO instances of an appropriate size for your number of CPU threads, then feed them jobs one at a time each. There is definitely no canned answer for this, so you would have to do your own benchmarking and tuning to find the optimum pool size for the resources of your local machine.
Regards Matthew Francis