问题标签 [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.

0 投票
2 回答
340 浏览

gemfire - 如何通过子对象的唯一值或一组值访问 Gemfire 对象?

我有一种情况,我在 Gemfire 中存储了一个复杂的对象。为简单起见,它是一个具有多个属性的客户对象。我们还存储了一个电子邮件地址对象列表(不仅仅是电子邮件字符串)、地址、电话号码和对“外部系统”的引用,我需要确定查询数据的最佳方式。

首先是对象结构(为简单起见伪xsd)

由于各种原因,我们将此数据作为 Customer 对象存储在单个区域中,因此我们的用例不能接受托管或类似概念(尽管它会使这变得无限简单)

需求

  • 通过唯一的电子邮件地址访问客户(全球唯一并在插入前验证)
  • 通过外部系统标识符名称和 id 的唯一组合访问客户(同样是全球唯一并在插入之前验证)

如果需要,我们确实可以访问 Elasticsearch,但我们真的很想通过直接返回 Customer 对象来解决这两个独特的 get 请求。在 Gemfire 中解决此问题的最佳方法是什么?FWIW,我们也在使用 Spring-Data-Gemfire。

0 投票
1 回答
499 浏览

gemfire - 可以在单个查询中对父区域的所有子区域完成 GemFire OQL 查询吗

我需要像以下那样创建区域层次结构,就像我通常按国家和类型查询一样。我将所有数据放在国家级地区。有时我在 NAM_Type1 中跨国家查询,有时在全球查询。

有没有一种方法可以查询父区域,而无需在各个国家/地区多次查询?

可以在父级创建索引吗?

我使用带有 spring-gemfire 的 GemFire 7.0 进行连接。

0 投票
2 回答
368 浏览

gemfire - 使用 GemFire 的备用 Spring 会话

Spring 文档说 Spring Session 可以在使用 REST 端点时透明地利用 Redis 来支持 Web 应用程序的 HttpSession。

有谁知道 Spring 在这个地方是否支持 GemFire 而不是 Redis 来支持 Web 应用程序的 HttpSession ?

参考:http ://docs.spring.io/spring-session/docs/current/reference/html5/guides/rest.html

0 投票
2 回答
1072 浏览

java - 如何通过子对象的唯一值或一组值访问 Gemfire 对象

我的查询看起来像这样,但没有按预期工作。我已经尝试了很多不同的变体,但是我在查询中遗漏了一些东西。

存储库代码

型号

我得到的堆栈如下所示:

我不确定我做错了什么。任何帮助表示赞赏。

0 投票
2 回答
285 浏览

spring-integration - 用于 Gemfire 存储有效负载的 Spring 集成出站通道

我正在尝试发送payload到 gemfire 缓存。我将其payload作为 MQ 消息接收。如果 myoutbound adapter是另一个Queue.

但是,当出站通道是 Gemfire 的出站适配器时,它会引发异常。下面是代码片段。

非常感谢这里的帮助。因为我是 Gemfire + Spring IO 的新手

以下是我在应用程序中收到消息时看到的错误

在上面的payload行中打印在这里..下面的行是错误

0 投票
3 回答
2829 浏览

spring - Spring Data 的目的及其抽象级别是什么?

在试图理解“Spring Data”的目的时,我偶然发现了这篇文章,并尝试了一些关于 Gemfire/Redis 存储库及其相应 Spring-Data 组件的示例。有人可以帮我解决以下问题。

场景:当 GemFire 是我的数据存储时,我必须使用GemFireTemplate 上的创建、获取和删除方法来执行 CRUD 操作。当 Redis 是我的数据存储时,我必须在 RedisTemplate 上使用.opsForHash().put 、 .opsForHash().get 和 .opsForHash().delete方法来执行相同的 CRUD 操作。

问题

Spring-Data 不应该为底层数据存储提供一定程度的抽象吗?如果我希望了解各自的 CRUD 方法并基于底层数据存储有不同的 API,那么 Spring-Data 组件会带来什么样的抽象?我不能直接使用 Gemfire 的 Jedis 或 Java 客户端来执行这些数据存储特定的 CRUD 操作吗?

这个链接似乎解释了这一点,但是,看起来我需要一些帮助来理解它。

没有适用于所有持久性存储的通用 API。差异太根本了。但是 Spring Data 项目确实提供了一个通用的编程模型来访问你的数据

0 投票
1 回答
431 浏览

listener - 使用 Listeners 和 MBean 发送通知的区别?

我一直在阅读有关 GemFire 分布式数据存储/管理/缓存系统如何执行通知的信息。在阅读这篇文章时,我有这个问题。

Gemfire 似乎在使用 MBean 在事件期间创建通知。使用 MBean 创建通知而不是实现基于侦听器的方法有何不同/合适?(不仅在 GemFire 中,而且在一般情况下)

注意:我对 MBean 主题非常陌生。只是理解它的主要目的是公开要管理的资源。

0 投票
1 回答
102 浏览

spring - Gemfire 如何通知应用程序

在使用 Gemfire 存储其 Session(Spring Session - HTTPSession 的实现)的 Web 应用程序中,Gemfire 如何通知更改(如​​缓存到期、缓存更改、缓存destry..events)?特别是当 Gemfire 部署在客户端-服务器模型或点对点模型中时..等。该事件可能会在整个分布式环境中的任何一个节点中触发,我们可能不想继续监听所有节点..等等。

我看到 Gemfire 具有发出通知的 MBean,我们的应用程序应该将侦听器挂钩到这些 MBean 通知还是有其他更好的方法?

目的是在此类事件期间放置一些清理代码。

0 投票
1 回答
345 浏览

apache-camel - 如何使用 Camel 路由自定义 Java Listener onEvent

我无法找到任何示例来帮助我理解我需要在这里做什么,所以我将解释我的问题:

我有一个为 Pivotal 的 Gemfire 产品实现自定义侦听器的 Java Bean。它实现了一个称为 CqListener 的接口,该接口定义了一个方法,如下所示:

基本上,当我们在 Gemfire 网格上执行连续查询 (CQ) 时,我们将此 Bean 注册为侦听器,它将接收网格中与我们的查询匹配的任何更改。

例如,执行类似的 CQ

每当“table_name”表(在 Gemfire 中它被称为区域)中的任何内容发生更改(CRUD)时,都会CQEvent在方法中为我们提供onEvent

我现在要做的是将 Camel 连接起来,将任何东西从底层 CQ 东西路由到自定义路由。无论如何我可以告诉骆驼说“嘿,任何时候打电话给onEvent,把它路由到其他地方”?

我试图路由到的其他地方是 Akka Actor。已经有一个包装 akka 和骆驼的项目(http://doc.akka.io/docs/akka/snapshot/scala/camel.html)但我无法弄清楚这个端点 URI 业务来获取入站 CQ 事件.

我知道我缺少有关 Camel 的概念键,因此非常感谢任何帮助。我已经设法使用 jms 端点来实现这一点,所以我知道它如何适用于众所周知的协议,但我只是想弄清楚如何为自定义协议执行此操作,其中实现从我身上抽象出来(就像CQListener 的情况)

0 投票
1 回答
451 浏览

spring-data - 如何确定 Spring Data Gemfire 查询是否使用 Gemfire 索引?

我正在尝试确定我的所有 Spring Data Gemfire 查询是否都在使用 Gemfire 服务器上定义的索引。

使用 OQL,我知道我可以添加“ <trace>”,并且在 gemfire 日志中它会显示是否正在使用索引:

但是像这样我们没有定义 OQL 的方法呢?(假设用户名不是客户区域的键):