一直不理解ehcache中 timeToIdleSeconds和 timeToLiveSeconds 这两个配置的区别,特意找到官方文档看了一下,基本理解了它的意思。
首先看一段原文:
What is the difference between TTL, TTI, and eternal?
These are three cache attributes that can be used to build an effective eviction configuration.
It is advised totest and tune these values to help optimize cache performance.
TTI timeToIdleSeconds is the maximumnumber of seconds that an element can exist in the cache without being accessed,
while TTL timeToLiveSeconds is the maximum number of seconds that an element can exist in the cache whether or not is has been accessed.
If the eternal flag is set, elements are allowed to exist in the cache eternallyand none are evicted.
The eternal setting overrides any TTI or TTL settings. These attributes are set for the entire cache in the configuration file. If you want to set them per element, you must do it programmatically
主要意思:
1.TTI timeToIdleSeconds is the maximum number of seconds that an element can exist in the cache without being accessed:
TTI用于设置对象在cache中的最大闲置时间,就是 在一直不访问这个对象的前提下,这个对象可以在cache中的存活时间。
2.TTL timeToLiveSeconds is the maximum number of seconds that an element can exist in the cache whether
or not is has been accessed.
TTL用于设置对象在cache中的最大存活时间,就是 无论对象访问或是不访问(闲置),这个对象在cache中的存活时间。
3.If the eternal flag is set, elements are allowed to exist in the cache eternally and none are evicted。
当配置了 eternal ,那么TTI和TTL这两个配置将被覆盖,对象会永恒存在cache中,永远不会过期。
本文详细解释了EHCache中的TTI(timeToIdleSeconds)和TTL(timeToLiveSeconds)两个配置的区别。TTI用于设置对象在未被访问的情况下在缓存中的最大存在时间;而TTL则定义了无论是否被访问,对象在缓存中的最大生存周期。如果设置了eternal标志,则对象将永久存在于缓存中。
21万+

被折叠的 条评论
为什么被折叠?



