Vocabulary content as an evolution of thesauri and code lists from major science fields, do not change often. In fact many sets of data (vocabularies) are released bi-anually! This is important to know, as it affects the patterns (deployment and content caching) valid for those specific endpoints.
Now that we know the update cycle, we can add content caching with specific cache validity, and client specific validity tagging (ETags, Cache-Control, and Expiry headers).
From the server logs on our existing SISSVoc 3 services, IGC Timescale(s) [all of them], and the old sissvoc services, the most common access requests are:
and from the old service
The others dont really rate a mention.
Summing up vocabulary services:
- Promote the other resources (like the vocab in a file!)
- Use a content cache which can hash on URL and Accept header (check out "Vary: Accept-Encoding")
- Content Cache for as long as possible - provided you can destroy the cache
- Set Client side headers to reduce the re-request (Cache-Control smax age or Expiry headers)
- 29 Aug 2012