我期待着评估以下问题的简单解决方案。
ep6jt1vc1#
您可以使用一个典型的spring解决方案。一些注解,如导入 org.springframework.cache.annotation.Cacheable; 和导入 org.springframework.cache.annotation.CacheEvict; 这就是你所需要的。然后可以声明任何可能用于缓存的bean,例如:
org.springframework.cache.annotation.Cacheable;
org.springframework.cache.annotation.CacheEvict;
spring: cache: type: ${CACHE_TYPE:REDIS} servlet: multipart: max-file-size: 128MB max-request-size: 128MB enabled: true
对于redis和spring boot或简单的bean和map。
mdfafbf12#
请注意,你在这里讲的是两件不同的事情。一个是缓存,您可以使用javaapi实现它。jms框架,比如apachekafka,是建立在jmsapi之上的,根据应用程序逻辑,jmsapi可以是发布子模型,也可以是点到点模型。为了决定何时必须删除消息(比如5天前)或其他应用程序逻辑,当然可以使用观察者设计模式。对于上下游系统,需要jms,对于缓存,可以使用javaapi。
2条答案
按热度按时间ep6jt1vc1#
您可以使用一个典型的spring解决方案。一些注解,如导入
org.springframework.cache.annotation.Cacheable;
和导入org.springframework.cache.annotation.CacheEvict;
这就是你所需要的。然后可以声明任何可能用于缓存的bean,例如:对于redis和spring boot或简单的bean和map。
mdfafbf12#
请注意,你在这里讲的是两件不同的事情。一个是缓存,您可以使用javaapi实现它。jms框架,比如apachekafka,是建立在jmsapi之上的,根据应用程序逻辑,jmsapi可以是发布子模型,也可以是点到点模型。为了决定何时必须删除消息(比如5天前)或其他应用程序逻辑,当然可以使用观察者设计模式。对于上下游系统,需要jms,对于缓存,可以使用javaapi。