178.3.2. 事务和缓存级别
如果您使用消息并使用事务(transacted=true
),缓存级别的默认设置可能会影响性能。
如果您使用 XA 事务,则无法缓存,因为它可能会导致 XA 事务无法正常工作。
如果您不使用 XA,您应该考虑缓存,因为它会提高性能,如设置 cacheLevelName=CACHE_CONSUMER
。
通过 Camel 2.7.x,cacheLevelName
的默认设置是 CACHE_CONSUMER
。您需要明确设置 cacheLevelName=CACHE_NONE
。
在 Camel 2.8 上,cacheLevelName
的默认设置是 CACHE_AUTO
。这个默认自动检测模式,并相应地设置缓存级别:
-
CACHE_CONSUMER
iftransacted=false
-
CACHE_NONE
iftransacted=true
因此,您可以说默认设置是保守。如果您正在使用非XA 事务,请考虑使用 cacheLevelName=CACHE_CONSUMER
。