问题标签 [ignite]
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.
ignite - 在进行交易时点燃关闭节点
我正在尝试 Apache Ignite 并使用示例。我从截屏视频中举了一个关于交易的例子。启动 3 个服务器节点,并启动开始事务并将 50k 元素放入缓存的代码。当它运行时,我杀死了 3 个节点中的 2 个。我希望 Ignite 提交失败并出现错误,但实际上没有任何错误,并且我得到了部分保存的数据。如手册中所述,它不是完全的 ACID 事务。可能是我不明白一些重要的事情吗?
ignite - 无法在单个实例上连接到多个 apache ignite 服务器
我是 Apache Ignite 的新手。我有一个应用程序,我正在尝试将 Apache Ignite 用于分布式缓存。
我目前有 3 台服务器要处理来处理传入的请求,如果一台服务器关闭,其他两台服务器中的一台将需要处理请求。
我已经在缓存配置中配置了“REPLICATED Cache”,并使用“TcpDiscoveryVmIpFinder”为正在使用的服务器配置了 IP 地址。
当所有三台服务器都启动时,拓扑快照总是向我显示一个客户端和一台服务器,即使其他两台服务器仍然启动,杀死一台服务器也会断开客户端节点。
使用多播节点发现时我遇到了同样的问题。一台服务器被识别,而另外两台服务器没有加入拓扑,即使它们具有相同的多播组配置。
caching - 我可以将 JCache API 用于 Apache Ignite 中的分布式缓存吗?
我想使用 JCache API (JSR107, javax.cache) 使用 Apache Ignite 配置分布式缓存。这可能吗?
我发现的示例要么使用 JCache API 创建本地缓存,要么使用 Apache Ignite API 创建分布式缓存(或数据网格)。
sql - 在客户端模式下在 Apache Ignite 中运行 SQL 扫描查询的问题
我正在尝试使用以下代码在 Apache Ignite 中测试 SQL。
但是我在最后一次尝试在扫描查询后越过光标时抛出异常。
因为我刚刚开始尝试 Apache Ignite,所以我肯定在做一些明显错误的事情。如果您能告诉我如何解决这个问题,那就太好了。
我也在客户端模式下运行此代码,而不是作为服务器。一个 3 节点集群单独运行。
java - 缓存销毁后,Ignite 不会释放内存
我在 Spring Boot Web 应用程序中使用 Ignite 引擎作为 bean。缓存配置如下:
现在,我预计最大内存使用量为 2.6 GB,因为我将堆外最大内存设置为 1 GB。但这是我将数百万个对象加载到缓存中后发生的情况!
此时,如果我尝试将更多条目加载到缓存中,内存使用量只会不断增长,这证明 ignite 并没有释放我之前销毁的缓存。
编辑
我将一个 Maven 测试项目连同我的输出一起上传到http://sourceforge.net/projects/ignitetest35087485/files/。正如您将看到的,它在 5 次负载销毁循环后耗尽了我的记忆。没有进行交换空间的驱逐,并且 ignite 没有考虑 offHeapMaxMemory 设置。
这里有什么问题?任何帮助深表感谢。
cassandra-2.0 - Cassandra 和 Apache Ignite 集成以实现直写和直读?
我想在 apache cassandra 中集成 apache ignite 内存功能。我怎么能做到这一点?插件是否可用于直写和直读?有效插入和检索的可能架构是什么?
java - 更新 Apache Ignite WebSession 属性
我们目前正在将 Apache Ignite 集成到我们的应用程序中以在集群中共享会话。请参阅点燃文档。此时,我们可以成功地在两个本地 tomcat 实例之间共享会话,但是有一个用例(似乎)不受 Ignite 支持。
在我们的应用程序中,我们有一个名为“Profile”的会话对象。此配置文件是用户特定的,并且在用户浏览应用程序时将各种属性添加到此对象。
我们通过以下方式更新“配置文件”对象(伪代码):
如果没有 Apache Ignite,我们的会话将包含“setLastVisitedPage”(“test”)的正确值。但是在使用 Ignite 时,Ignite 的“WebSession”对象似乎有点不同:在会话对象中设置“setLastVisitedPage”值时,WebSession 将首先正确包含正确的值(“test”),但是当浏览到下一页,从 Ignite 缓存解析的 WebSession 对象不包含更改的“setLastVisitedPage”属性。
我查看了 Ignite 代码,我想,我知道为什么它没有按预期工作。查看 Ignite 'WebSession' 类,我看到以下方法:
简而言之:Ignite 期望在每次更新会话对象后调用 session.setAttribute 方法,因此 Ignite 会将更改添加到它的内部“更新”集合中,该集合用于更新 Ignite 网格中的对象。我们的应用程序的一个解决方案是更改我们的应用程序代码,在每次更新后调用 setAttribute,但我们也使用代码依赖项,我们无法更改并且可能不会在会话对象更改后调用 setAttribute。
Ignite 需要在会话对象更改后调用 setAttribute 是否有原因,或者这是 Ignite 中的缺陷?
apache-flink - 在 YARN 上使用 Ignite 确保本地缓存
我有一个用 Flink 编写的流处理应用程序,我想使用来自状态后端的内部键值存储来计算流聚合。因为我要处理很多聚合,所以我想避免像当前提供的内存支持和文件支持的实现那样在 Flink 应用程序中将它们维护在堆上。相反,我想在 Apache Ignite 中维护状态缓存,这反过来可以使用直写和直读功能在 HBase 中提供更可靠的备份。
理想情况下,我会在每个物理节点上都有一个本地 Ignite 缓存,用于处理该节点上所有长时间运行的 Flink 操作符的状态。例如,每个节点在可用的 8 GB 容器中都有一个 Ignite 节点,无论它运行 1 个还是 10 个 Flink 操作符。
问题是我希望 Flink 和 Ignite 都在 YARN 上运行。通过一致性分区,我可以确保一般数据被发送到正确的缓存,并且在出现故障等情况下,可以从 HBase 重新填充。我面临的问题是 Ignite 似乎随机地从 YARN 请求容器,这意味着我不能保证实际上有可用的本地缓存,即使我将 Ignite 节点的数量设置为与物理节点的数量完全相同节点。
有关如何为每个物理节点设置一个 Ignite 节点的任何建议?
ignite - 在活动 Apache Ignite 网格中部署新应用程序版本(具有更改的会话对象)时发生 ClassNotFoundException
我们目前正在将 Apache Ignite 集成到我们的应用程序中以在集群中共享会话。
此时,我们可以成功地在两个本地 tomcat 实例之间共享会话,但是有一个用例,目前还不能正常工作。
当使用完全相同的代码运行两个本地实例时,一切都很好。但是当 Ignite 逻辑集成到我们的生产集群中时,我们会遇到以下用例:
- 节点 1和节点 2,运行应用程序的版本 1
- 此时我们要部署应用程序的第 2 版
- Tomcat 在节点 1停止,部署版本 2,并在部署结束时再次启动节点 1的 Tomcat。
- 我们现在有Node 1和版本 2的代码和Node 2,仍然是版本 1
- Tomcat 在节点 2停止,部署版本 2,并在部署结束时再次启动节点 2的 Tomcat。
- 我们现在有Node 1和版本 2的代码和Node 2和版本 2
- 部署完成
当在同一网格中使用两个 tomcat 实例在本地重现此用例时,Ignite Web 会话集群会失败。我测试的是删除驻留在用户会话中的类(配置文件)的一个“字符串属性”。使用此更改的类启动节点 1时,出现以下异常:
这将是我们部署的常见/常规用例。我的问题是:如何处理这个用例?Ignite 中是否有解决/解决此类问题的方法?
.net - 何时使用 Apache Ignite?
我在一个项目中工作,有人建议我数据缓存可能有用。
我遇到了 Apache Ignite,但我无法理解它是否实际上只是在内存存储中,还是它是数据库之上的一层。如果有任何关于如何将其集成到 .Net Web 应用程序中的明确解释,那将非常有帮助。