CollaboraOnline / online

Collabora Online is a collaborative online office suite based on LibreOffice technology. This is also the source for the Collabora Office apps for iOS and Android.
https://collaboraonline.com
Other
1.88k stars 710 forks source link

perf: reduce coolwsd memory footprint #10566

Open mmeeks opened 5 days ago

mmeeks commented 5 days ago

coolwsd currently stores all of the files we serve in-memory to avoid needing to touch the file-system after start.

Arguably this is good for security, however in some circumstances eg. the appimage use case that's not going to improve things much, at quite some cost in memory.

We should not store un-compressed files in-memory, but only the zipped ones; we should de-compress from these (which is super-fast) if/as/when needed to serve them (in one-shot - that should be a very unusual code-path). That should save around ~40Mb of memory for coolwsd: not earth shattering, but worthwhile - and ~8% of coolwsd's memory usage.

mmeeks commented 4 days ago

@Ashod might be interesting for you =)