While not quite as critical on our local installations. We a central instance and people generally requesting the same data quite often it makes sense to determine reasonable caching for each endpoint and and actually implement it.
Beyond actually doing something like Redis or memcached even just having appropriate cache-control headers and etags for things like the office and parameters endpoints would be beneficial, though could break their use for certain checks if the cache isn't ignored.
Thus this would likely also necessitate additional database checks.
Candidates are:
- memcached
- redis
- JVM memory
- No cache
JVM memory makes the most sense for the local instances.
memcached or redis make the most sense for cloud (would be multiple instances running.)