The docs on ehache says:
timeToIdleSeconds: Sets the time to idle for an element before it expires.
i.e. The maximum amount of time between accesses before an element expires
timeToLiveSeconds: Sets the time to live for an element before it expires.
i.e. The maximum time between creation time and when an element expires.
timeToIdleSeconds enables cached object to be kept in as long as it is requested in periods shorter than
timeToLiveSeconds will make the cached object be invalidated after that many seconds regardless of how many times or when it was requested.
Let's say that
timeToIdleSeconds = 3. Then the object will be invalidated if it hasn't been requested for 4 seconds.
timeToLiveSeconds = 90, then the object will be removed from cache after 90 seconds, even if it has been requested few milliseconds in the 90th second of its short life.