use namespaces for cache.
add vary headers.
avoid subrequests.