问题标签 [spring-data-gemfire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - gemfire 本地区域创建
我的 cache.xml 如下:
我看到如下异常
schema_reference.4:未能读取架构文档“http://www.springframework.org/schema/gemfire/spring-gemfire-1.2.xsd”,因为 1) 找不到该文档;2) 文件无法读取;3) 文档的根元素不是 .
cvc-complex-type.2.4.c:匹配通配符是严格的,但找不到元素“gfe:cache”的声明。
我尝试更改为不同版本的 xsd,如下所示,但没有运气,我仍然看到问题。
http://www.springframework.org/schema/gemfire/spring-gemfire.xsd
和
http://www.springframework.org/schema/gemfire/spring-gemfire-1.1.xsd
和
http://www.springframework.org/schema/gemfire/spring-gemfire-1.2.xsd
经过以上所有尝试,当我更改为 1.1 版本时,我发现它现在引发了另一个问题
cvc-complex-type.2.4.c:匹配通配符是严格的,但找不到元素“gfe:local-region”的声明。
谁能帮我解决这个问题?
java - Gemfire 配置问题
我有一个用于设置 gemfire 的 xml 配置文件,如下所示
当我尝试加载此配置文件时,我看到以下异常..
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 原因:org.springframework.beans.factory.BeanCreationException:创建名为“region1”的bean时出错:无法解析对bean的引用gemfireCache' 同时设置 bean 属性'cache';嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'gemfireCache' is defined at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328) at org.springframework.beans.factory .support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory。
org.springframework.beans.factory.NoSuchBeanDefinitionException:在 org.springframework.beans.factory.support 的 org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:529) 中没有定义名为“gemfireCache”的 bean。 AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1095) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:277) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java: 193) 在 org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322) ... 41 更多
当我从中删除 id 属性时
然后给
它工作正常。当我指定 id 属性时,它会抛出 t 任何人都可以帮助我吗
java - 值未填充到 gemfire 缓存中
我有 2 个 xml 配置文件,如下所示
应用上下文.xml:
测试缓存.xml
我有一个名为TestCache.java的测试类
但我没有看到实际上没有缓存到该区域中。对于retrieveSomeValues() 方法的两个方法调用,该方法实际上正在执行,而不是从缓存中检索值。
我能知道上面的测试课有什么问题吗?我可以知道如何使用 @Cacheable 来缓存able retriveSomeValues() 方法的值吗?
java - 将居住时间添加到我的缓存中
我们如何为 LocalRegion1 或上面定义的缓存添加生存时间?我想每 24 小时完全刷新一次缓存并从服务器获取新数据。我使用本地缓存,它从服务器获取一些数据并在本地存储。
java - Spring Data Gemfire 配置未连接到定位器?
假设我的目标部署环境中已经运行了 Gemfire 定位器和缓存服务器进程。目标部署环境使用客户端-服务器拓扑。
我有一个 Spring 3.1 MVC 应用程序,它想要使用 Gemfire 缓存。我正在使用 Spring Data Gemfire 1.2.2 和 Gemfire 6.6.1
所以我在我的spring.xml
假设外部 JAR 依赖项都已在 Maven 中正确定义。还假设我加载了一个属性文件,该文件定义了上面引用的属性值。该locators
属性定义为使用已启动的 Gemfire 定位器的 IP 和端口。
我相信这应该足够好,这样我就可以在我的 MVC 应用程序中使用@Cacheable
. 我希望这些配置在应用程序服务器中启动一个定位器以连接到 Gemfire 网格,添加myCacheRegion
到 Gemfire 缓存服务器,然后cacheManager
应该能够使用新的缓存区域。
我得到BeanCreationException
s 这是由于 Spring 启动时无法连接到定位器引起的:
但是当我部署到目标环境时,无法创建 Gemfire bean,因为定位器进程无法连接。我错过了什么?
java - Gemfire 本地缓存过期
我有一个嵌入在具有本地 Gemfire 缓存的 web 服务中的 JAR。我要解决的问题是这些数据过期。
我创建了一个自定义过期计时器,它将以秒为单位设置每个条目的过期时间,并绑定了一个侦听器来检查 afterInvalidate(EntryEvent e)。
这是我春天的地区宣言
我正在尝试做的与我的设置方式有点不同。我想要做的是,一旦将初始条目放入我想要在该区域生存的区域。是否可以在当地的 gemfire 地区进行 Time to Live?
java - Gemfire 中的多个缓存创建
我正在尝试在一个 JVM 中创建一个本地缓存和一个客户端缓存,但是我收到下面所述的错误,我认为这是由于缓存是单例的,您只能为每个 JVM 创建一个。
有人知道一个好的解决方法吗?
错误:
缓存.xml:
java - Spring-data-gemfire 布尔查询仅适用于 PDX 序列化?
我在 pojo 中有一个简单的布尔字段,我存储在gemfire区域中。pojo 还包括具有不同数据类型的其他字段(例如String
, Long
, Short
,Date
等)。我为每个字段编写了一个区域查询,除了布尔字段之外,它们都返回得很好。我的实体的示例存根:
这是存储库存根:
我已经尝试了所有可能的变体(使用手动查询和查询生成),但查询未配置 PDX 的布尔字段总是会导致此异常:
java.lang.IllegalArgumentException:不支持的运算符 TRUE!在 org.springframework.data.gemfire.repository.query.Predicates$AtomicPredicate.getOperator(Predicates.java:174) 在 org.springframework.data.gemfire.repository.query.Predicates$AtomicPredicate.toClause(Predicates.java:137)在 org.springframework.data.gemfire.repository.query.Predicates$AtomicPredicate.toString(Predicates.java:126) 在 org.springframework.data.gemfire.repository.query.Predicates.toString(Predicates.java:90) 在 org .springframework.data.gemfire.repository.query.QueryBuilder.create(QueryBuilder.java:44)
如果我启用 PDX,则布尔字段的查询工作正常。如果未启用 PDX(例如使用引导式 gemfire 服务器进行单元测试),则布尔查询不起作用。
有没有人遇到过这样的事情?我正在使用gemfire 7.0.1和spring-data-gemfire 1.3.3。我认为这可能是 spring-data-gemfire 中的一个错误,但想把它放在那里只是为了确定。
java - 使用 Spring Data Gemfire 时的 @Region 注释
我正在使用 Spring Data 和 Gemfire 开发数据服务。有注释
指定 POJO 将存储在哪个 Gemfire 区域。
它需要配置的 Gemfire 区域的名称。我觉得硬编码区域名称是一种不好的做法,因为 Gemfire 集群将由一个单独的团队管理,我相信区域名称应该是完全可配置的。
有没有更好的做法来避免对区域名称进行硬编码?
replication - 将新服务器添加到托管复制区域的 Gemfire 集群
我有一个托管复制区域的 1 台服务器的 Gemfire 集群。我正在使用客户端-服务器架构。
该区域已预加载数据。
然后我将一个新服务器添加到集群中。我可以在 Pulse 和 gfsh 中看到它。一些新客户端连接到新服务器,但它们接收到空数据。 数据不会从第一台服务器复制到新启动的服务器。
在第二台服务器的 cacheserver.log 中,我可以看到类似的行
我想这是来自第一台服务器的数据复制,但第二台服务器上似乎没有数据。
有什么解决办法吗?
更新:我注意到它与索引有关。我有一个索引定义为
如果删除索引,一切正常。但是,如果启用了索引,则索引似乎不会被复制,而缓存服务器仍会尝试使用它。因此 - 来自新启动的服务器的空数据。