Split the getUserProfile() into two - fetch() which does not uses
in-memory cache, and get() that uses cache.