任何人都可以解释一下我们如何将 apache ignite 客户端连接到与我的 spring boot 应用程序一起运行的 apache ignite 嵌入式服务器吗

问题描述 投票:0回答:1

我能够将 ignite 客户端连接到远程计算机,但无法连接到本地计算机,甚至没有给出任何错误

    private static final String HOST = "127.0.0.1";
    private static final String PORT = "10800";
    private static final String CACHE_NAME = "thin-cache";
 
    public static void main(String[] args) {
        logger.info("Simple Ignite thin client example working over TCP socket.");
        ClientConfiguration cfg = new ClientConfiguration().setAddresses(HOST + ":" + PORT);
        try (IgniteClient igniteClient = Ignition.startClient(cfg)) {
            ClientCache<String, String> clientCache = igniteClient.getOrCreateCache(CACHE_NAME);   
            // put a few value   
            clientCache.put("Moscow", "095");   
            clientCache.put("Vladimir", "033");   
            // get the region code of the Vladimir   
            String val = clientCache.get("Vladimir");   
            logger.info("Print value: {}", val);   
        } catch (IgniteException e) {   
            logger.error("Ignite exception:", e.getMessage());   
        } catch (Exception e) {   
            logger.error("Ignite exception:", e.getMessage());   
        }
    }
ignite
1个回答
0
投票

OP 中的示例代码演示了 127.0.0.1 本地 IP 地址的使用。如果来自远程节点的连接有效,则远程客户端能够使用绑定到非 127.* 地址的嵌入式服务器的 ignite 实例。从本地主机连接时使用远程客户端使用的相同 IP 地址也可以。

如果您需要能够从远程客户端连接到服务器 IP 以及 127.0.0.1 的 ignite 实例,请尝试将 IgniteConfiguration 绑定地址显式设置为 0.0.0.0 (INADDR_ANY)。如果已将其设置为主机 IP,则不会在 127.0.0.1 上侦听任何内容。

https://ignite.apache.org/releases/latest/javadoc/org/apache/ignite/IgniteSystemProperties.html#IGNITE_LOCAL_HOST

确保 127.0.0.1 的远程和本地连接工作相同的最简单方法是将 IGNITE_LOCAL_HOST 系统属性设置为“0.0.0.0”。

© www.soinside.com 2019 - 2024. All rights reserved.