@lumieducation/h5p-servercan be improved:
CachedLibraryStorageclass can be used to cache the most common calls to the library storage. This will improve the overall performance of the library quite a bit, as many functions need library metadata, semantics or language files, which they get from the library storage. When used for complex content types like Course Presentation, the
GET /ajax?action=librariesendpoint becomes around 40x faster if you use the cached library storage!
cache-managerto abstract the caching, so you can pass in any of the store engines supported by it (e.g. redis, mongodb, fs, memcached). See the documentation page of
cache-managerfor more details.
/directory/in/filesystem. You can simply serve this directory under the URL specified in
/libraries). If you put this directory into a NFS storage or a shared volume, you can even use different machines to serve the library files (vertical scaling)!
@lumieducation/h5p-serverin a setup in which multiple instances of it are executed in parallel (on a single machine to make use of multi-core processors or on multiple machines). When doing this, pay attention to this: