Apache Ignite™是一个以内存为中心的分布式数据库,缓存和处理平台,用于事务,分析和流式工作负载,以PB级的速度提供内存速度。它为大型数据集提供高性能的内存计算功能。
为什么Ignite TcpClientChannel端口不能大于49151?
背景:我想使用 testcontainers 与 apache ignite 进行单元测试 我目前正在使用 Ignite 客户端,并遇到了其端口限制的潜在问题,具体...
我有一个在 Kubernetes 上运行的 Apache Ignite 集群,有 4 个节点。我想确保该节点对于活性探针来说是活动的。基本上,如果一个节点没有响应,我需要将其删除......
我正在调试我们的一台 Ignite 服务器的问题,该服务器在 Kubernetes 中运行了几个月,没有出现任何问题。 客户端节点开始无法启动,因为它们未通过准备专业人员......
如何在 apache ignite 2.x 中使用 sql 查询组合亲和性
我正在尝试使用 Apache Ignite 实现 sql 查询的亲和力。假设我有以下类(代码可在 https://github.com/hostettler/distibuted-queries 获取) //我不...
我正在使用 Spring Boot 探索 Apache Ignite,我需要确保即使在服务器重新启动后数据也能恢复到内存中,并且我需要数据插入的确认。有没有...
我有40个节点的服务器集群和几十个客户端。当客户端节点重新启动时,其中一台服务器会脱机,并显示有关阻塞系统关键 NIO 工作线程的日志,接下来的日志会出现几个...
ignite C++瘦客户端可以用来创建(缓存的)可查询字段吗?
似乎只有ignite c++胖客户端才能配置缓存的可查询字段(例如通过Spring配置文件),任何人都可以使用瘦客户端来做同样的事情吗? 我只能...
在 Kubernetes 上运行的 Apache Ignite 客户端无法加入部署在 Kubernetes 外部的 Ignite 服务器的集群
我们在一组虚拟机上部署了旧版 Apache Ignite 服务器 (v2.9.1),并尝试从部署在 Kubernetes 上的服务通过胖客户端连接到服务器。 我们尝试了这个配置 我们在一组虚拟机上部署了旧版 Apache Ignite 服务器 (v2.9.1),并尝试从部署在 Kubernetes 上的服务通过胖客户端连接到服务器。 我们尝试过这个配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration"> <!-- Set to true to enable distributed class loading for examples, default is false. --> <property name="peerClassLoadingEnabled" value="false"/> <!-- Enable client mdoe. --> <property name="clientMode" value="true"/> <!-- Work Dir --> <property name="workDirectory" value="/tmp"/> <!-- Network Segmentation (Split Brain) --> <property name="segmentationPolicy" value="NOOP"/> <property name="segmentCheckFrequency" value="60000"/> <property name="clientFailureDetectionTimeout" value="60000"/> <!-- Enable task execution events for examples. --> <property name="includeEventTypes"> <list> </list> </property> <property name="discoverySpi"> <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi"> <property name="networkTimeout" value="15000"/> <property name="socketTimeout" value="15000"/> <property name="ackTimeout" value="15000"/> <property name="statisticsPrintFrequency" value="30"/> <property name="ipFinder"> <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> <property name="addresses" value="server-1.my-domain.com,server-2.my-domain.com,server-3.my-domain.com"/> </bean> </property> </bean> </property> <property name="communicationSpi"> <bean class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi"> <property name="forceClientToServerConnections" value="true"/> </bean> </property> </bean> <bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean"/> </beans> 但因以下错误而失败, 客户端日志: SEVERE: Failed to send message: null java.io.IOException: Failed to get acknowledge for message: TcpDiscoveryClientMetricsUpdateMessage [super=TcpDiscoveryAbstractMessage [sndNodeId=null, id=57c6bd40b81-6c95ce16-6b3a-4046-80fa-6cdaac6c4831, verifierNodeId=null, topVer=0, pendingIdx=0, failedNodes=null, isClient=true]] at org.apache.ignite.spi.discovery.tcp.ClientImpl$SocketWriter.body(ClientImpl.java:1471) at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:58) ... ... SEVERE: Got exception while starting (will rollback startup routine). class org.apache.ignite.IgniteCheckedException: Failed to start manager: GridManagerAdapter [enabled=true, name=org.apache.ignite.internal.managers.discovery.GridDiscoveryManager] at org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1921) at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1279) at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2052) at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1698) at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1114) at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:634) at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:575) at org.apache.ignite.Ignition.getOrStart(Ignition.java:419) at my.IgniteClientService.getIgnite(PRIgniteService.java:575) at my.IgniteClientService.startIgniteService(IgniteClientService.java:926) at my.IgniteClientService.<init>(IgniteClientService.java:100) at my.IgniteClientService.<init>(IgniteClientService.java:78) at java.lang.Thread.run(Thread.java:748) Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start SPI: TcpDiscoverySpi [addrRslvr=null, sockTimeout=15000, ackTimeout=15000, marsh=JdkMarshaller [clsFilter=org.apache.ignite.marshaller.MarshallerUtils$1@68c517], reconCnt=10, reconDelay=2000, maxAckTimeout=600000, soLinger=0, forceSrvMode=false, clientReconnectDisabled=false, internalLsnr=null, skipAddrsRandomization=false] at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:302) at org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:974) at org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1916) ... 32 more Caused by: class org.apache.ignite.spi.IgniteSpiException: Failed to connect to cluster, connection failed and failed to reconnect. at org.apache.ignite.spi.discovery.tcp.ClientImpl$Reconnector.body(ClientImpl.java:1691) at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:58) 服务器日志: [12:00:51,574][WARNING][disco-event-worker-#323][GridDiscoveryManager] Node FAILED: TcpDiscoveryNode [id=6c95ce16-6b3a-4046-80fa-6cdaac6c4831, consistentId=6c95ce16-6b3a-4046-80fa-6cdaac6c4831, addrs=ArrayList [10.244.8.141, 127.0.0.1], sockAddrs=HashSet [/10.244.8.141:0, /127.0.0.1:0], discPort=0, order=2126, intOrder=1071, lastExchangeTime=1696593572069, loc=false, ver=2.9.1#20201203-sha1:adcce517, isClient=true] 这里10.244.8.141是POD的IP地址。 有类似设置工作的人请帮助我们!! 服务器节点日志中是否还有其他错误?通过整个集群上的日志来检查它们。
不支持使用带有 Apache Ignite 的 ODBC 的 Python 字符串到 varchar 映射
我的 Ignite 实例 (2.7.5) 已启动并正在运行,我可以使用 DBeaver 连接到它并创建表、存储和检索数据等。 我现在尝试使用
如何通过瘦客户端将ReadThrough和WriteThrough设置为CacheConfiguration,然后创建Cache?(.net)
我有一些特殊的配置,比如ReadThrough和WriteThrough需要设置到CacheConfiguration,然后创建多个缓存(名称不同)。我不想重新启动
我想为每个线程创建一个瘦客户端,每个服务器上可能有大约100个线程。如果我启动数百台服务器,Ignite 集群可能有数以万计的瘦客户端连接...
我正在使用 Ignite 2.15 并配置了“PageEvictionMode=RANDOM_2_LRU”的 DataRegion,但最终我收到了 IgniteOutOfMemoryException 并显示以下消息: 数据寄存器内存不足...
Apache ignite支持最新的Spring Boot版本3.x吗?
在将 spring boot ignite 项目从 2.7 迁移到 3.x 时,面临与 Apache ignite 相关依赖项相关的 bean 创建异常,Apache ignite 是否支持最新的 spring boot 版本? 尝试过
apache ignite 2.14.0 可以与 java 17 一起使用吗? 尝试运行使用 apache ignite 2.14.0 的 java 17 应用程序,出现此错误: 使用 apa 运行 java 17 应用程序时出错...
我想知道是否可以通过将配置参数传递给 JVM 来启动 Apache Ignite 客户端节点。例如,我们可以通过运行“org.apache.ignite.startup”来启动服务器节点。
GridGain 升级失败并出现 IgniteSpiException
使用环境:AWS、Docker桌面 现有镜像:gridgain/community:8.8.27-openjdk11-slim 新镜像:gridgain/community:8.8.34-openjdk17-slim 两种环境 GirdGain 集群(3 个节点)都是 r...
我在docker容器中运行ignite,我想实现本机持久性,这样如果我删除或停止ignite容器,在重新启动容器后我想访问以前的数据...
我们在 Kubernetes 中运行 Ignite,并在客户端看到以下错误。 看起来当时其他一些进程在通过网络进行通信时遇到了一些困难(高延迟和......
Apache Ignite .net 瘦客户端“打开的游标太多”异常
针对 ignite 缓存执行 linq 和 SQL 查询的 .net 瘦客户端出现以下异常 异常:“Apache.Ignite.Core.Client.IgniteClientException:50000:太...
我正在使用 ignite 计算任务从 BigQuery 检索数据。以下是胖客户端和服务器端的配置: 我正在使用 ignite 计算任务从 BigQuery 检索数据。以下是胖客户端和服务器端的配置: <property name="peerClassLoadingEnabled" value="true"/> <property name="deploymentMode" value="CONTINUOUS"/> 计算任务可以描述如下: public class BigQueryStorageReadTask implements IgniteClosure<LoadingRequest, Long> { @IgniteInstanceResource private Ignite ignite; @Override public Long apply(LoadingRequest query) { return loadToCache(query); } private void readFromBigQuery(LoadingRequest query) { try (BigQueryReadClient client = BigQueryReadClient.create()) { // Read data from BigQuery using storage read api ..... } catch (IOException e) { throw new RuntimeException(e); } } } 使用存储读取API从BigQuery读取数据时出现依赖关系问题,需要依赖关系 implementation platform('com.google.cloud:libraries-bom:26.22.0') implementation 'com.google.cloud:google-cloud-bigquery:2.23.2' 如果我使用简单的 SQL api 从 BigQuery 读取数据,只需要“com.google.cloud:google-cloud-bigquery:2.23.2”,那么就没有问题,计算任务工作正常,但有 bom 依赖项 com.google.cloud:libraries-bom 远程计算任务会因为缺乏依赖而出现各种错误。由于我的 ignite 服务器节点以 xml 脚本而不是 spring 应用程序启动,因此我尝试将库 jar 手动添加到 user_libs 中,但仍然缺少一些低级依赖项。 我想知道是否有办法解决远程计算任务的依赖管理?我认为是peerClassLoading无法正常工作。 更新: 经过进一步调查,发现问题与是否包含bom无关,只是其他导入库的版本参考。 我猜根本原因是 ignite peerClassLoading 是否可以下载所有依赖项,包括 transitive 依赖项。 我通过关闭peerClassLoading并手动提供所有jar进行本地测试,如下 docker run -v /local_path/to/dir_with_libs/:/opt/ignite/apache-ignite/libs/user_libs apacheignite/ignite 效果很好。 所以我想我应该问:如何正确配置peerClassLoading策略以使其了解完整的依赖关系? AFAIU 当您仅指定 BOM 依赖项时会遇到问题。 这看起来像是您的 Gradle 使用问题。语句 platform('com.google.cloud:libraries-bom:26.22.0') 本身并不声明任何依赖项。 BOM 文件用于指定应该协同工作的特定版本的依赖项集,然后您不需要为这些包含的依赖项指定版本。 例如 implementation platform('com.google.cloud:libraries-bom:26.22.0') implementation 'com.google.cloud:google-cloud-bigquery' implementation 'com.google.cloud:google-cloud-storage' 如果您只声明对 BOM 的依赖,或者只复制 BOM 文件,您将无法获得您需要的实际代码。 如果您想从应用程序运行任务,对等类加载是加载库的可行选项。在这种情况下,您的应用程序应该具有任务代码+所有依赖项。服务器不应该有任何这些依赖项。然后,当服务器尝试执行任务时,它会要求客户端共享所有必需的类。 部署 Maven 依赖项的另一个好选择是使用 GridGain Control Center 的 Code Deployment 功能。您可以将集群连接到控制中心并使用其 UI 来操作已部署的代码 - 您指定 Maven 工件或上传要部署的文件,系统会处理依赖项、版本控制等。同样,仅指定 BOM不起作用 - 您需要应用程序使用的实际库(例如 com.google.cloud:google-cloud-bigquery:2.23.2)。