gpt4 book ai didi

java - spring 的 Ehcache 在微服务之间不能正常工作

转载 作者:行者123 更新时间:2023-11-30 10:25:22 25 4
gpt4 key购买 nike

我有一个单一的应用程序。根据微服务的外观,它需要适应这种外观拆分成小的应用程序。你假设在夹板后每个微服务都有一个模型,该模型在所有微服务中都有一个相同的对象。下面的例子用于清算。

进入 Micro1:

Class A {
private Object obj;

//getter and setter
}

进入 Micro2:

Class B {
private Object obj;

//getter and setter
}

Object obj有自己的存储库、服务和 Controller 层。
在这个模型的服务层保存方法中有spring的ehcash的配置。像这样:

@Transactional
@Override
@Caching(evict = { @CacheEvict(value = "obj", key = "#obj.id" ) })
public Integer save(Object obj) {
//Code here
}

当应用程序是一个单体应用程序时它是有效的,但由于这个 obj 作为依赖项被拆分到所有微服务中并且这个方法(保存方法)重复到每个微服务中,ehcash 没有无法正常工作。
当每个微服务影响其他微服务知道的 Object obj 时,我该怎么做。

最佳答案

有很多解决方案可以帮助您解决这个问题,redis 与 spring 集成良好,您可以轻松地使用它来解决您的问题,您可以在此 link 中阅读更多相关信息

也有类似 Hazelcast 的解决方案,它是一个数据网格,而不仅仅是一个简单的键值缓存。

关于java - spring 的 Ehcache 在微服务之间不能正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46263443/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com