The current state is that the apipie cache consists of  root index page and
page per API resource and method and JSON desription of whole API
(multiplied by number of languages). Currently we build all the resource
specific pages during the package build time. The index and JSON need to
contain all the resources according to current configuration including all
the plugins that extends API. That is the reason we have to build this
during installation.

During my benchmarks the bottleneck was loading the whole rails env. Before
the rake started to generate anything it took almost a minute on average
machine. May be different now though.

Where we can surely spare some time is rpm package installation. Every
plugin extending API calls apipie:rake:index in %postrans resulting in
about 3 consequent redundant calls for default Katello install. If we can
add some state info that index was already built in this RPM transaction we
could spare a few mins.

I'm not sure if JS would help us with creation of the JSON which is the
most used part of the API docs (used for Hammer and bindings), but I can
imagine it could be put together dynamically on first request from pieces
generated during a build time and cached. This way we could avoid index
creation completely.

Martin

-- 
You received this message because you are subscribed to the Google Groups 
"foreman-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to